From c118b5424b1f6e513bda0042fe8bcd9b92133899 Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sat, 26 Sep 2026 01:02:52 +0200 Subject: [PATCH 1/8] add scatterternarygl trace (not unit tests yet) --- devtools/regl_codegen/server.mjs | 2 +- lib/index-strict.js | 1 + lib/index.js | 1 + lib/scatterternarygl.js | 3 + ...605bddec766ce3c5beca448738b9fcb95625273f0b | 694 ++++++ ...2217773f063d32b967782ca4b908945212df473aa8 | 1031 +++++++++ src/plot_api/subroutines.js | 8 + src/plots/ternary/index.js | 21 +- src/plots/ternary/ternary.js | 49 +- src/traces/scatterternary/hover.js | 6 +- src/traces/scatterternarygl/attributes.ts | 39 + src/traces/scatterternarygl/base_index.js | 24 + src/traces/scatterternarygl/calc.js | 76 + src/traces/scatterternarygl/defaults.js | 89 + src/traces/scatterternarygl/event_data.js | 15 + src/traces/scatterternarygl/format_labels.js | 13 + src/traces/scatterternarygl/hover.js | 26 + src/traces/scatterternarygl/index.js | 7 + src/traces/scatterternarygl/plot.js | 198 ++ src/traces/scatterternarygl/plot_strict.js | 13 + .../scatterternarygl/regl_precompiled.js | 27 + src/traces/scatterternarygl/strict.js | 7 + src/types/core/events.d.ts | 6 + tasks/generate_entry_point_types.mjs | 2 +- tasks/util/constants.js | 1 + .../mocks/scatterternarygl_clipping.json | 80 + test/image/mocks/scatterternarygl_fills.json | 118 + test/image/mocks/scatterternarygl_lines.json | 393 ++++ .../image/mocks/scatterternarygl_markers.json | 99 + test/plot-schema.json | 1934 +++++++++++++++++ 30 files changed, 4978 insertions(+), 5 deletions(-) create mode 100644 lib/scatterternarygl.js create mode 100644 src/generated/regl-codegen/a05bf3c1b12ac6d06248a1605bddec766ce3c5beca448738b9fcb95625273f0b create mode 100644 src/generated/regl-codegen/ac155a28876770d366446d2217773f063d32b967782ca4b908945212df473aa8 create mode 100644 src/traces/scatterternarygl/attributes.ts create mode 100644 src/traces/scatterternarygl/base_index.js create mode 100644 src/traces/scatterternarygl/calc.js create mode 100644 src/traces/scatterternarygl/defaults.js create mode 100644 src/traces/scatterternarygl/event_data.js create mode 100644 src/traces/scatterternarygl/format_labels.js create mode 100644 src/traces/scatterternarygl/hover.js create mode 100644 src/traces/scatterternarygl/index.js create mode 100644 src/traces/scatterternarygl/plot.js create mode 100644 src/traces/scatterternarygl/plot_strict.js create mode 100644 src/traces/scatterternarygl/regl_precompiled.js create mode 100644 src/traces/scatterternarygl/strict.js create mode 100644 test/image/mocks/scatterternarygl_clipping.json create mode 100644 test/image/mocks/scatterternarygl_fills.json create mode 100644 test/image/mocks/scatterternarygl_lines.json create mode 100644 test/image/mocks/scatterternarygl_markers.json diff --git a/devtools/regl_codegen/server.mjs b/devtools/regl_codegen/server.mjs index 6d2bc76efa3..389bd2b82d4 100644 --- a/devtools/regl_codegen/server.mjs +++ b/devtools/regl_codegen/server.mjs @@ -17,7 +17,7 @@ import { var args = minimist(process.argv.slice(2), {}); var PORT = args.port || 3000; -var reglTraceList = ['parcoords', 'scattergl', 'scatterpolargl', 'splom']; +const reglTraceList = args.trace ? [args.trace] : ['parcoords', 'scattergl', 'scatterpolargl', 'scatterternarygl', 'splom']; const _static = sirv(constants.pathToRoot, { dev: true, diff --git a/lib/index-strict.js b/lib/index-strict.js index 976695f8443..11487cccb86 100644 --- a/lib/index-strict.js +++ b/lib/index-strict.js @@ -12,6 +12,7 @@ Plotly.register([ require('./histogram2dcontour'), require('./contour'), require('./scatterternary'), + require('../src/traces/scatterternarygl/strict'), require('./violin'), require('./funnel'), require('./waterfall'), diff --git a/lib/index.js b/lib/index.js index f61d8ab484d..17470e3308f 100644 --- a/lib/index.js +++ b/lib/index.js @@ -12,6 +12,7 @@ Plotly.register([ require('./histogram2dcontour'), require('./contour'), require('./scatterternary'), + require('./scatterternarygl'), require('./violin'), require('./funnel'), require('./waterfall'), diff --git a/lib/scatterternarygl.js b/lib/scatterternarygl.js new file mode 100644 index 00000000000..9325d55e59b --- /dev/null +++ b/lib/scatterternarygl.js @@ -0,0 +1,3 @@ +'use strict'; + +module.exports = require('../src/traces/scatterternarygl'); diff --git a/src/generated/regl-codegen/a05bf3c1b12ac6d06248a1605bddec766ce3c5beca448738b9fcb95625273f0b b/src/generated/regl-codegen/a05bf3c1b12ac6d06248a1605bddec766ce3c5beca448738b9fcb95625273f0b new file mode 100644 index 00000000000..15c193442b6 --- /dev/null +++ b/src/generated/regl-codegen/a05bf3c1b12ac6d06248a1605bddec766ce3c5beca448738b9fcb95625273f0b @@ -0,0 +1,694 @@ +module.exports = function anonymous(g0,g48,g50,g114,g122,g124,g130,g132,g202 +) { +"use strict"; +var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v111,v199; +v1=g0.gl; +v2=g0.context; +v3=g0.strings; +v4=g0.next; +v5=g0.current; +v6=g0.draw; +v7=g0.elements; +v8=g0.buffer; +v9=g0.shader; +v10=g0.attributes; +v11=g0.vao; +v12=g0.uniforms; +v13=g0.framebuffer; +v14=g0.extensions; +v15=g0.timer; +v16=g0.isBufferArgs; +v17=v4.blend_color; +v18=v5.blend_color; +v19=v4.blend_equation; +v20=v5.blend_equation; +v21=v4.blend_func; +v22=v5.blend_func; +v23=v4.depth_range; +v24=v5.depth_range; +v25=v4.colorMask; +v26=v5.colorMask; +v27=v4.polygonOffset_offset; +v28=v5.polygonOffset_offset; +v29=v4.sample_coverage; +v30=v5.sample_coverage; +v31=v4.stencil_func; +v32=v5.stencil_func; +v33=v4.stencil_opFront; +v34=v5.stencil_opFront; +v35=v4.stencil_opBack; +v36=v5.stencil_opBack; +v37=v4.scissor_box; +v38=v5.scissor_box; +v39=v4.viewport; +v40=v5.viewport; +v41={ +"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6} +; +v42={ +"never":512,"less":513,"<":513,"equal":514,"=":514,"==":514,"===":514,"lequal":515,"<=":515,"greater":516,">":516,"notequal":517,"!=":517,"!==":517,"gequal":518,">=":518,"always":519} +; +v43={ +"0":0,"1":1,"zero":0,"one":1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776} +; +v44={ +"add":32774,"subtract":32778,"reverse subtract":32779} +; +v45={ +"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386} +; +v46={ +"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126} +; +v47={ +"cw":2304,"ccw":2305} +; +v111={ +} +; +v199={ +} +; +return { +"draw":function(a0){ +var v49,v51,v52,v53,v100,v101,v102,v103,v104,v105,v106,v107,v108,v109,v110,v112,v113; +v49=v14.angle_instanced_arrays; +v51=v13.next; +v13.next=g50; +v52=v2.framebufferWidth; +v2.framebufferWidth=g50.width; +v53=v2.framebufferHeight; +v2.framebufferHeight=g50.height; +if(g50!==v13.cur){ +if(g50){ +v1.bindFramebuffer(36160,g50.framebuffer); +} +else{ +v1.bindFramebuffer(36160,null); +} +v13.cur=g50; +} +if(v5.dirty){ +var v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93,v94,v95,v96,v97,v98,v99; +v54=v4.dither; +if(v54!==v5.dither){ +if(v54){ +v1.enable(3024); +} +else{ +v1.disable(3024); +} +v5.dither=v54; +} +v55=v4.blend_enable; +if(v55!==v5.blend_enable){ +if(v55){ +v1.enable(3042); +} +else{ +v1.disable(3042); +} +v5.blend_enable=v55; +} +v56=v17[0]; +v57=v17[1]; +v58=v17[2]; +v59=v17[3]; +if(v56!==v18[0]||v57!==v18[1]||v58!==v18[2]||v59!==v18[3]){ +v1.blendColor(v56,v57,v58,v59); +v18[0]=v56; +v18[1]=v57; +v18[2]=v58; +v18[3]=v59; +} +v60=v19[0]; +v61=v19[1]; +if(v60!==v20[0]||v61!==v20[1]){ +v1.blendEquationSeparate(v60,v61); +v20[0]=v60; +v20[1]=v61; +} +v62=v21[0]; +v63=v21[1]; +v64=v21[2]; +v65=v21[3]; +if(v62!==v22[0]||v63!==v22[1]||v64!==v22[2]||v65!==v22[3]){ +v1.blendFuncSeparate(v62,v63,v64,v65); +v22[0]=v62; +v22[1]=v63; +v22[2]=v64; +v22[3]=v65; +} +v66=v4.depth_enable; +if(v66!==v5.depth_enable){ +if(v66){ +v1.enable(2929); +} +else{ +v1.disable(2929); +} +v5.depth_enable=v66; +} +v67=v4.depth_func; +if(v67!==v5.depth_func){ +v1.depthFunc(v67); +v5.depth_func=v67; +} +v68=v23[0]; +v69=v23[1]; +if(v68!==v24[0]||v69!==v24[1]){ +v1.depthRange(v68,v69); +v24[0]=v68; +v24[1]=v69; +} +v70=v4.depth_mask; +if(v70!==v5.depth_mask){ +v1.depthMask(v70); +v5.depth_mask=v70; +} +v71=v25[0]; +v72=v25[1]; +v73=v25[2]; +v74=v25[3]; +if(v71!==v26[0]||v72!==v26[1]||v73!==v26[2]||v74!==v26[3]){ +v1.colorMask(v71,v72,v73,v74); +v26[0]=v71; +v26[1]=v72; +v26[2]=v73; +v26[3]=v74; +} +v75=v4.cull_enable; +if(v75!==v5.cull_enable){ +if(v75){ +v1.enable(2884); +} +else{ +v1.disable(2884); +} +v5.cull_enable=v75; +} +v76=v4.cull_face; +if(v76!==v5.cull_face){ +v1.cullFace(v76); +v5.cull_face=v76; +} +v77=v4.frontFace; +if(v77!==v5.frontFace){ +v1.frontFace(v77); +v5.frontFace=v77; +} +v78=v4.lineWidth; +if(v78!==v5.lineWidth){ +v1.lineWidth(v78); +v5.lineWidth=v78; +} +v79=v4.polygonOffset_enable; +if(v79!==v5.polygonOffset_enable){ +if(v79){ +v1.enable(32823); +} +else{ +v1.disable(32823); +} +v5.polygonOffset_enable=v79; +} +v80=v27[0]; +v81=v27[1]; +if(v80!==v28[0]||v81!==v28[1]){ +v1.polygonOffset(v80,v81); +v28[0]=v80; +v28[1]=v81; +} +v82=v4.sample_alpha; +if(v82!==v5.sample_alpha){ +if(v82){ +v1.enable(32926); +} +else{ +v1.disable(32926); +} +v5.sample_alpha=v82; +} +v83=v4.sample_enable; +if(v83!==v5.sample_enable){ +if(v83){ +v1.enable(32928); +} +else{ +v1.disable(32928); +} +v5.sample_enable=v83; +} +v84=v29[0]; +v85=v29[1]; +if(v84!==v30[0]||v85!==v30[1]){ +v1.sampleCoverage(v84,v85); +v30[0]=v84; +v30[1]=v85; +} +v86=v4.stencil_enable; +if(v86!==v5.stencil_enable){ +if(v86){ +v1.enable(2960); +} +else{ +v1.disable(2960); +} +v5.stencil_enable=v86; +} +v87=v4.stencil_mask; +if(v87!==v5.stencil_mask){ +v1.stencilMask(v87); +v5.stencil_mask=v87; +} +v88=v31[0]; +v89=v31[1]; +v90=v31[2]; +if(v88!==v32[0]||v89!==v32[1]||v90!==v32[2]){ +v1.stencilFunc(v88,v89,v90); +v32[0]=v88; +v32[1]=v89; +v32[2]=v90; +} +v91=v33[0]; +v92=v33[1]; +v93=v33[2]; +v94=v33[3]; +if(v91!==v34[0]||v92!==v34[1]||v93!==v34[2]||v94!==v34[3]){ +v1.stencilOpSeparate(v91,v92,v93,v94); +v34[0]=v91; +v34[1]=v92; +v34[2]=v93; +v34[3]=v94; +} +v95=v35[0]; +v96=v35[1]; +v97=v35[2]; +v98=v35[3]; +if(v95!==v36[0]||v96!==v36[1]||v97!==v36[2]||v98!==v36[3]){ +v1.stencilOpSeparate(v95,v96,v97,v98); +v36[0]=v95; +v36[1]=v96; +v36[2]=v97; +v36[3]=v98; +} +v99=v4.scissor_enable; +if(v99!==v5.scissor_enable){ +if(v99){ +v1.enable(3089); +} +else{ +v1.disable(3089); +} +v5.scissor_enable=v99; +} +} +v100=v2.framebufferWidth; +v101=v2.framebufferHeight; +v102=v2.viewportWidth; +v2.viewportWidth=v100; +v103=v2.viewportHeight; +v2.viewportHeight=v101; +v1.viewport(0,0,v100,v101); +v40[0]=0; +v40[1]=0; +v40[2]=v100; +v40[3]=v101; +v104=v2.framebufferWidth; +v105=v2.framebufferHeight; +v1.scissor(0,0,v104,v105); +v38[0]=0; +v38[1]=0; +v38[2]=v104; +v38[3]=v105; +v106=v5.profile; +if(v106){ +v107=performance.now(); +g48.count++; +} +v108=v9.frag; +v109=v9.vert; +v110=v9.program(v109,v108); +v1.useProgram(v110.program); +v11.setVAO(null); +v112=v110.id; +v113=v111[v112]; +if(v113){ +v113.call(this,a0); +} +else{ +v113=v111[v112]=g114(v110); +v113.call(this,a0); +} +v5.dirty=true; +v11.setVAO(null); +v13.next=v51; +v2.framebufferWidth=v52; +v2.framebufferHeight=v53; +v2.viewportWidth=v102; +v2.viewportHeight=v103; +if(v106){ +g48.cpuTime+=performance.now()-v107; +} +} +,"scope":function(a0,a1,a2){ +var v115,v116,v117,v118,v119,v120,v121,v123,v125,v126,v127,v128,v129,v131,v133,v134,v135,v136,v137; +v115=v13.next; +v13.next=g50; +v116=v2.framebufferWidth; +v2.framebufferWidth=g50.width; +v117=v2.framebufferHeight; +v2.framebufferHeight=g50.height; +v118=v2.framebufferWidth; +v119=v2.framebufferHeight; +v120=v2.viewportWidth; +v2.viewportWidth=v118; +v121=v2.viewportHeight; +v2.viewportHeight=v119; +v123=v39[0]; +v39[0]=g122; +v125=v39[1]; +v39[1]=g124; +v126=v39[2]; +v39[2]=v118; +v127=v39[3]; +v39[3]=v119; +v128=v2.framebufferWidth; +v129=v2.framebufferHeight; +v131=v37[0]; +v37[0]=g130; +v133=v37[1]; +v37[1]=g132; +v134=v37[2]; +v37[2]=v128; +v135=v37[3]; +v37[3]=v129; +v136=v5.profile; +if(v136){ +v137=performance.now(); +g48.count++; +} +v5.dirty=true; +a1(v2,a0,a2); +v13.next=v115; +v2.framebufferWidth=v116; +v2.framebufferHeight=v117; +v2.viewportWidth=v120; +v2.viewportHeight=v121; +v39[0]=v123; +v39[1]=v125; +v39[2]=v126; +v39[3]=v127; +v37[0]=v131; +v37[1]=v133; +v37[2]=v134; +v37[3]=v135; +if(v136){ +g48.cpuTime+=performance.now()-v137; +} +v5.dirty=true; +} +,"batch":function(a0,a1){ +var v138,v139,v140,v141,v188,v189,v190,v191,v192,v193,v194,v195,v196,v197,v198,v200,v201; +v138=v14.angle_instanced_arrays; +v139=v13.next; +v13.next=g50; +v140=v2.framebufferWidth; +v2.framebufferWidth=g50.width; +v141=v2.framebufferHeight; +v2.framebufferHeight=g50.height; +if(g50!==v13.cur){ +if(g50){ +v1.bindFramebuffer(36160,g50.framebuffer); +} +else{ +v1.bindFramebuffer(36160,null); +} +v13.cur=g50; +} +if(v5.dirty){ +var v142,v143,v144,v145,v146,v147,v148,v149,v150,v151,v152,v153,v154,v155,v156,v157,v158,v159,v160,v161,v162,v163,v164,v165,v166,v167,v168,v169,v170,v171,v172,v173,v174,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187; +v142=v4.dither; +if(v142!==v5.dither){ +if(v142){ +v1.enable(3024); +} +else{ +v1.disable(3024); +} +v5.dither=v142; +} +v143=v4.blend_enable; +if(v143!==v5.blend_enable){ +if(v143){ +v1.enable(3042); +} +else{ +v1.disable(3042); +} +v5.blend_enable=v143; +} +v144=v17[0]; +v145=v17[1]; +v146=v17[2]; +v147=v17[3]; +if(v144!==v18[0]||v145!==v18[1]||v146!==v18[2]||v147!==v18[3]){ +v1.blendColor(v144,v145,v146,v147); +v18[0]=v144; +v18[1]=v145; +v18[2]=v146; +v18[3]=v147; +} +v148=v19[0]; +v149=v19[1]; +if(v148!==v20[0]||v149!==v20[1]){ +v1.blendEquationSeparate(v148,v149); +v20[0]=v148; +v20[1]=v149; +} +v150=v21[0]; +v151=v21[1]; +v152=v21[2]; +v153=v21[3]; +if(v150!==v22[0]||v151!==v22[1]||v152!==v22[2]||v153!==v22[3]){ +v1.blendFuncSeparate(v150,v151,v152,v153); +v22[0]=v150; +v22[1]=v151; +v22[2]=v152; +v22[3]=v153; +} +v154=v4.depth_enable; +if(v154!==v5.depth_enable){ +if(v154){ +v1.enable(2929); +} +else{ +v1.disable(2929); +} +v5.depth_enable=v154; +} +v155=v4.depth_func; +if(v155!==v5.depth_func){ +v1.depthFunc(v155); +v5.depth_func=v155; +} +v156=v23[0]; +v157=v23[1]; +if(v156!==v24[0]||v157!==v24[1]){ +v1.depthRange(v156,v157); +v24[0]=v156; +v24[1]=v157; +} +v158=v4.depth_mask; +if(v158!==v5.depth_mask){ +v1.depthMask(v158); +v5.depth_mask=v158; +} +v159=v25[0]; +v160=v25[1]; +v161=v25[2]; +v162=v25[3]; +if(v159!==v26[0]||v160!==v26[1]||v161!==v26[2]||v162!==v26[3]){ +v1.colorMask(v159,v160,v161,v162); +v26[0]=v159; +v26[1]=v160; +v26[2]=v161; +v26[3]=v162; +} +v163=v4.cull_enable; +if(v163!==v5.cull_enable){ +if(v163){ +v1.enable(2884); +} +else{ +v1.disable(2884); +} +v5.cull_enable=v163; +} +v164=v4.cull_face; +if(v164!==v5.cull_face){ +v1.cullFace(v164); +v5.cull_face=v164; +} +v165=v4.frontFace; +if(v165!==v5.frontFace){ +v1.frontFace(v165); +v5.frontFace=v165; +} +v166=v4.lineWidth; +if(v166!==v5.lineWidth){ +v1.lineWidth(v166); +v5.lineWidth=v166; +} +v167=v4.polygonOffset_enable; +if(v167!==v5.polygonOffset_enable){ +if(v167){ +v1.enable(32823); +} +else{ +v1.disable(32823); +} +v5.polygonOffset_enable=v167; +} +v168=v27[0]; +v169=v27[1]; +if(v168!==v28[0]||v169!==v28[1]){ +v1.polygonOffset(v168,v169); +v28[0]=v168; +v28[1]=v169; +} +v170=v4.sample_alpha; +if(v170!==v5.sample_alpha){ +if(v170){ +v1.enable(32926); +} +else{ +v1.disable(32926); +} +v5.sample_alpha=v170; +} +v171=v4.sample_enable; +if(v171!==v5.sample_enable){ +if(v171){ +v1.enable(32928); +} +else{ +v1.disable(32928); +} +v5.sample_enable=v171; +} +v172=v29[0]; +v173=v29[1]; +if(v172!==v30[0]||v173!==v30[1]){ +v1.sampleCoverage(v172,v173); +v30[0]=v172; +v30[1]=v173; +} +v174=v4.stencil_enable; +if(v174!==v5.stencil_enable){ +if(v174){ +v1.enable(2960); +} +else{ +v1.disable(2960); +} +v5.stencil_enable=v174; +} +v175=v4.stencil_mask; +if(v175!==v5.stencil_mask){ +v1.stencilMask(v175); +v5.stencil_mask=v175; +} +v176=v31[0]; +v177=v31[1]; +v178=v31[2]; +if(v176!==v32[0]||v177!==v32[1]||v178!==v32[2]){ +v1.stencilFunc(v176,v177,v178); +v32[0]=v176; +v32[1]=v177; +v32[2]=v178; +} +v179=v33[0]; +v180=v33[1]; +v181=v33[2]; +v182=v33[3]; +if(v179!==v34[0]||v180!==v34[1]||v181!==v34[2]||v182!==v34[3]){ +v1.stencilOpSeparate(v179,v180,v181,v182); +v34[0]=v179; +v34[1]=v180; +v34[2]=v181; +v34[3]=v182; +} +v183=v35[0]; +v184=v35[1]; +v185=v35[2]; +v186=v35[3]; +if(v183!==v36[0]||v184!==v36[1]||v185!==v36[2]||v186!==v36[3]){ +v1.stencilOpSeparate(v183,v184,v185,v186); +v36[0]=v183; +v36[1]=v184; +v36[2]=v185; +v36[3]=v186; +} +v187=v4.scissor_enable; +if(v187!==v5.scissor_enable){ +if(v187){ +v1.enable(3089); +} +else{ +v1.disable(3089); +} +v5.scissor_enable=v187; +} +} +v188=v2.framebufferWidth; +v189=v2.framebufferHeight; +v190=v2.viewportWidth; +v2.viewportWidth=v188; +v191=v2.viewportHeight; +v2.viewportHeight=v189; +v1.viewport(0,0,v188,v189); +v40[0]=0; +v40[1]=0; +v40[2]=v188; +v40[3]=v189; +v192=v2.framebufferWidth; +v193=v2.framebufferHeight; +v1.scissor(0,0,v192,v193); +v38[0]=0; +v38[1]=0; +v38[2]=v192; +v38[3]=v193; +v194=v5.profile; +if(v194){ +v195=performance.now(); +g48.count+=a1; +} +v196=v9.frag; +v197=v9.vert; +v198=v9.program(v197,v196); +v1.useProgram(v198.program); +v11.setVAO(null); +v200=v198.id; +v201=v199[v200]; +if(v201){ +v201.call(this,a0,a1); +} +else{ +v201=v199[v200]=g202(v198); +v201.call(this,a0,a1); +} +v5.dirty=true; +v11.setVAO(null); +v13.next=v139; +v2.framebufferWidth=v140; +v2.framebufferHeight=v141; +v2.viewportWidth=v190; +v2.viewportHeight=v191; +if(v194){ +g48.cpuTime+=performance.now()-v195; +} +} +,} + +} \ No newline at end of file diff --git a/src/generated/regl-codegen/ac155a28876770d366446d2217773f063d32b967782ca4b908945212df473aa8 b/src/generated/regl-codegen/ac155a28876770d366446d2217773f063d32b967782ca4b908945212df473aa8 new file mode 100644 index 00000000000..712d8a1a079 --- /dev/null +++ b/src/generated/regl-codegen/ac155a28876770d366446d2217773f063d32b967782ca4b908945212df473aa8 @@ -0,0 +1,1031 @@ +module.exports = function anonymous(g0,g48,g102,g103,g108,g124,g128,g129,g149,g151,g153,g155,g157,g159,g163,g165,g171,g173,g174,g190,g203,g205,g259,g260 +) { +"use strict"; +var v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26,v27,v28,v29,v30,v31,v32,v33,v34,v35,v36,v37,v38,v39,v40,v41,v42,v43,v44,v45,v46,v47,v49; +v1=g0.gl; +v2=g0.context; +v3=g0.strings; +v4=g0.next; +v5=g0.current; +v6=g0.draw; +v7=g0.elements; +v8=g0.buffer; +v9=g0.shader; +v10=g0.attributes; +v11=g0.vao; +v12=g0.uniforms; +v13=g0.framebuffer; +v14=g0.extensions; +v15=g0.timer; +v16=g0.isBufferArgs; +v17=v4.blend_color; +v18=v5.blend_color; +v19=v4.blend_equation; +v20=v5.blend_equation; +v21=v4.blend_func; +v22=v5.blend_func; +v23=v4.depth_range; +v24=v5.depth_range; +v25=v4.colorMask; +v26=v5.colorMask; +v27=v4.polygonOffset_offset; +v28=v5.polygonOffset_offset; +v29=v4.sample_coverage; +v30=v5.sample_coverage; +v31=v4.stencil_func; +v32=v5.stencil_func; +v33=v4.stencil_opFront; +v34=v5.stencil_opFront; +v35=v4.stencil_opBack; +v36=v5.stencil_opBack; +v37=v4.scissor_box; +v38=v5.scissor_box; +v39=v4.viewport; +v40=v5.viewport; +v41={ +"points":0,"point":0,"lines":1,"line":1,"triangles":4,"triangle":4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6} +; +v42={ +"never":512,"less":513,"<":513,"equal":514,"=":514,"==":514,"===":514,"lequal":515,"<=":515,"greater":516,">":516,"notequal":517,"!=":517,"!==":517,"gequal":518,">=":518,"always":519} +; +v43={ +"0":0,"1":1,"zero":0,"one":1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776} +; +v44={ +"add":32774,"subtract":32778,"reverse subtract":32779} +; +v45={ +"0":0,"zero":0,"keep":7680,"replace":7681,"increment":7682,"decrement":7683,"increment wrap":34055,"decrement wrap":34056,"invert":5386} +; +v46={ +"int8":5120,"int16":5122,"int32":5124,"uint8":5121,"uint16":5123,"uint32":5125,"float":5126,"float32":5126} +; +v47={ +"cw":2304,"ccw":2305} +; +v49={ +} +; +v49.x=0; +v49.y=0; +return { +"draw":function(a0){ +var v50,v51,v52,v53,v94,v95,v96,v97,v98,v99,v100,v101,v104,v105,v106,v107,v109,v110,v111,v112,v113,v114,v115,v116,v117,v118,v119,v120,v121,v122,v123,v125,v126,v127,v130,v131,v132,v133; +v50=v14.angle_instanced_arrays; +v51=v13.next; +v13.next=null; +v52=v2.framebufferWidth; +v2.framebufferWidth=v2.drawingBufferWidth; +v53=v2.framebufferHeight; +v2.framebufferHeight=v2.drawingBufferHeight; +if(null!==v13.cur){ +if(null){ +v1.bindFramebuffer(36160,null.framebuffer); +} +else{ +v1.bindFramebuffer(36160,null); +} +v13.cur=null; +} +if(v5.dirty){ +var v54,v55,v56,v57,v58,v59,v60,v61,v62,v63,v64,v65,v66,v67,v68,v69,v70,v71,v72,v73,v74,v75,v76,v77,v78,v79,v80,v81,v82,v83,v84,v85,v86,v87,v88,v89,v90,v91,v92,v93; +v54=v4.dither; +if(v54!==v5.dither){ +if(v54){ +v1.enable(3024); +} +else{ +v1.disable(3024); +} +v5.dither=v54; +} +v55=v17[0]; +v56=v17[1]; +v57=v17[2]; +v58=v17[3]; +if(v55!==v18[0]||v56!==v18[1]||v57!==v18[2]||v58!==v18[3]){ +v1.blendColor(v55,v56,v57,v58); +v18[0]=v55; +v18[1]=v56; +v18[2]=v57; +v18[3]=v58; +} +v59=v19[0]; +v60=v19[1]; +if(v59!==v20[0]||v60!==v20[1]){ +v1.blendEquationSeparate(v59,v60); +v20[0]=v59; +v20[1]=v60; +} +v61=v4.depth_func; +if(v61!==v5.depth_func){ +v1.depthFunc(v61); +v5.depth_func=v61; +} +v62=v23[0]; +v63=v23[1]; +if(v62!==v24[0]||v63!==v24[1]){ +v1.depthRange(v62,v63); +v24[0]=v62; +v24[1]=v63; +} +v64=v4.depth_mask; +if(v64!==v5.depth_mask){ +v1.depthMask(v64); +v5.depth_mask=v64; +} +v65=v25[0]; +v66=v25[1]; +v67=v25[2]; +v68=v25[3]; +if(v65!==v26[0]||v66!==v26[1]||v67!==v26[2]||v68!==v26[3]){ +v1.colorMask(v65,v66,v67,v68); +v26[0]=v65; +v26[1]=v66; +v26[2]=v67; +v26[3]=v68; +} +v69=v4.cull_enable; +if(v69!==v5.cull_enable){ +if(v69){ +v1.enable(2884); +} +else{ +v1.disable(2884); +} +v5.cull_enable=v69; +} +v70=v4.cull_face; +if(v70!==v5.cull_face){ +v1.cullFace(v70); +v5.cull_face=v70; +} +v71=v4.frontFace; +if(v71!==v5.frontFace){ +v1.frontFace(v71); +v5.frontFace=v71; +} +v72=v4.lineWidth; +if(v72!==v5.lineWidth){ +v1.lineWidth(v72); +v5.lineWidth=v72; +} +v73=v4.polygonOffset_enable; +if(v73!==v5.polygonOffset_enable){ +if(v73){ +v1.enable(32823); +} +else{ +v1.disable(32823); +} +v5.polygonOffset_enable=v73; +} +v74=v27[0]; +v75=v27[1]; +if(v74!==v28[0]||v75!==v28[1]){ +v1.polygonOffset(v74,v75); +v28[0]=v74; +v28[1]=v75; +} +v76=v4.sample_alpha; +if(v76!==v5.sample_alpha){ +if(v76){ +v1.enable(32926); +} +else{ +v1.disable(32926); +} +v5.sample_alpha=v76; +} +v77=v4.sample_enable; +if(v77!==v5.sample_enable){ +if(v77){ +v1.enable(32928); +} +else{ +v1.disable(32928); +} +v5.sample_enable=v77; +} +v78=v29[0]; +v79=v29[1]; +if(v78!==v30[0]||v79!==v30[1]){ +v1.sampleCoverage(v78,v79); +v30[0]=v78; +v30[1]=v79; +} +v80=v4.stencil_enable; +if(v80!==v5.stencil_enable){ +if(v80){ +v1.enable(2960); +} +else{ +v1.disable(2960); +} +v5.stencil_enable=v80; +} +v81=v4.stencil_mask; +if(v81!==v5.stencil_mask){ +v1.stencilMask(v81); +v5.stencil_mask=v81; +} +v82=v31[0]; +v83=v31[1]; +v84=v31[2]; +if(v82!==v32[0]||v83!==v32[1]||v84!==v32[2]){ +v1.stencilFunc(v82,v83,v84); +v32[0]=v82; +v32[1]=v83; +v32[2]=v84; +} +v85=v33[0]; +v86=v33[1]; +v87=v33[2]; +v88=v33[3]; +if(v85!==v34[0]||v86!==v34[1]||v87!==v34[2]||v88!==v34[3]){ +v1.stencilOpSeparate(v85,v86,v87,v88); +v34[0]=v85; +v34[1]=v86; +v34[2]=v87; +v34[3]=v88; +} +v89=v35[0]; +v90=v35[1]; +v91=v35[2]; +v92=v35[3]; +if(v89!==v36[0]||v90!==v36[1]||v91!==v36[2]||v92!==v36[3]){ +v1.stencilOpSeparate(v89,v90,v91,v92); +v36[0]=v89; +v36[1]=v90; +v36[2]=v91; +v36[3]=v92; +} +v93=v4.scissor_enable; +if(v93!==v5.scissor_enable){ +if(v93){ +v1.enable(3089); +} +else{ +v1.disable(3089); +} +v5.scissor_enable=v93; +} +} +v94=v2["drawingBufferWidth"]; +v49.width=v94; +v95=v2["drawingBufferHeight"]; +v49.height=v95; +v96=v49.x|0; +v97=v49.y|0; +v98="width" in v49?v49.width|0:(v2.framebufferWidth-v96); +v99="height" in v49?v49.height|0:(v2.framebufferHeight-v97); +v100=v2.viewportWidth; +v2.viewportWidth=v98; +v101=v2.viewportHeight; +v2.viewportHeight=v99; +v1.viewport(v96,v97,v98,v99); +v40[0]=v96; +v40[1]=v97; +v40[2]=v98; +v40[3]=v99; +if(g102){ +v1.enable(3042); +} +else{ +v1.disable(3042); +} +v5.blend_enable=g102; +v1.blendFuncSeparate(1,771,1,771); +v22[0]=1; +v22[1]=771; +v22[2]=1; +v22[3]=771; +if(g103){ +v1.enable(2929); +} +else{ +v1.disable(2929); +} +v5.depth_enable=g103; +v104=v2.framebufferWidth; +v105=v2.framebufferHeight; +v1.scissor(0,0,v104,v105); +v38[0]=0; +v38[1]=0; +v38[2]=v104; +v38[3]=v105; +v106=v5.profile; +if(v106){ +v107=performance.now(); +g48.count++; +} +v1.useProgram(g108.program); +v109=v14.angle_instanced_arrays; +v11.setVAO(null); +v110=a0["positions"]; +v111=false; +v112=1; +v113=0; +v114=0; +v115=0; +v116=0; +v117=null; +v118=0; +v119=false; +v120=5126; +v121=0; +v122=0; +v123=0; +if(v16(v110)){ +v111=true; +v117=v8.createStream(34962,v110); +v120=v117.dtype; +} +else{ +v117=v8.getBuffer(v110); +if(v117){ +v120=v117.dtype; +} +else if("constant" in v110){ +v112=2; +if(typeof v110.constant === "number"){ +v113=v110.constant; +v114=v115=v116=0; +} +else{ +v113=v110.constant.length>0?v110.constant[0]:0; +v114=v110.constant.length>1?v110.constant[1]:0; +v115=v110.constant.length>2?v110.constant[2]:0; +v116=v110.constant.length>3?v110.constant[3]:0; +} +} +else{ +if(v16(v110.buffer)){ +v117=v8.createStream(34962,v110.buffer); +} +else{ +v117=v8.getBuffer(v110.buffer); +} +v120="type" in v110?v46[v110.type]:v117.dtype; +v119=!!v110.normalized; +v118=v110.size|0; +v121=v110.offset|0; +v122=v110.stride|0; +v123=v110.divisor|0; +} +} +v125=g124.location; +v126=v10[v125]; +if(v112===1){ +if(!v126.buffer){ +v1.enableVertexAttribArray(v125); +} +v127=v118||2; +if(v126.type!==v120||v126.size!==v127||v126.buffer!==v117||v126.normalized!==v119||v126.offset!==v121||v126.stride!==v122){ +v1.bindBuffer(34962,v117.buffer); +v1.vertexAttribPointer(v125,v127,v120,v119,v122,v121); +v126.type=v120; +v126.size=v127; +v126.buffer=v117; +v126.normalized=v119; +v126.offset=v121; +v126.stride=v122; +} +if(v126.divisor!==v123){ +v109.vertexAttribDivisorANGLE(v125,v123); +v126.divisor=v123; +} +} +else{ +if(v126.buffer){ +v1.disableVertexAttribArray(v125); +v126.buffer=null; +} +if(v126.x!==v113||v126.y!==v114||v126.z!==v115||v126.w!==v116){ +v1.vertexAttrib4f(v125,v113,v114,v115,v116); +v126.x=v113; +v126.y=v114; +v126.z=v115; +v126.w=v116; +} +} +v1.uniform1i(g128.location,g129.bind()); +v130=v6.elements; +if(v130){ +v1.bindBuffer(34963,v130.buffer.buffer); +} +else if(v11.currentVAO){ +v130=v7.getElements(v11.currentVAO.elements); +if(v130)v1.bindBuffer(34963,v130.buffer.buffer); +} +v131=v6.primitive; +v132=v6.offset; +v133=v6.instances; +if(v133>0){ +if(v130){ +v109.drawElementsInstancedANGLE(v131,3,v130.type,v132<<((v130.type-5121)>>1),v133); +} +else{ +v109.drawArraysInstancedANGLE(v131,v132,3,v133); +} +} +else if(v133<0){ +if(v130){ +v1.drawElements(v131,3,v130.type,v132<<((v130.type-5121)>>1)); +} +else{ +v1.drawArrays(v131,v132,3); +} +} +v5.dirty=true; +v11.setVAO(null); +v13.next=v51; +v2.framebufferWidth=v52; +v2.framebufferHeight=v53; +v2.viewportWidth=v100; +v2.viewportHeight=v101; +if(v106){ +g48.cpuTime+=performance.now()-v107; +} +if(v111){ +v8.destroyStream(v117); +} +g129.unbind(); +} +,"scope":function(a0,a1,a2){ +var v134,v135,v136,v137,v138,v139,v140,v141,v142,v143,v144,v145,v146,v147,v148,v150,v152,v154,v156,v158,v160,v161,v162,v164,v166,v167,v168,v169,v170,v172,v175,v176,v177,v178,v179,v180,v181,v182,v183,v184,v185,v186,v187,v188,v189,v191,v192,v193,v194,v195,v196,v197,v198,v199,v200,v201,v202,v204,v206; +v134=v13.next; +v13.next=null; +v135=v2.framebufferWidth; +v2.framebufferWidth=v2.drawingBufferWidth; +v136=v2.framebufferHeight; +v2.framebufferHeight=v2.drawingBufferHeight; +v137=v2["drawingBufferWidth"]; +v49.width=v137; +v138=v2["drawingBufferHeight"]; +v49.height=v138; +v139=v49.x|0; +v140=v49.y|0; +v141="width" in v49?v49.width|0:(v2.framebufferWidth-v139); +v142="height" in v49?v49.height|0:(v2.framebufferHeight-v140); +v143=v2.viewportWidth; +v2.viewportWidth=v141; +v144=v2.viewportHeight; +v2.viewportHeight=v142; +v145=v39[0]; +v39[0]=v139; +v146=v39[1]; +v39[1]=v140; +v147=v39[2]; +v39[2]=v141; +v148=v39[3]; +v39[3]=v142; +v150=v4.blend_enable; +v4.blend_enable=g149; +v152=v21[0]; +v21[0]=g151; +v154=v21[1]; +v21[1]=g153; +v156=v21[2]; +v21[2]=g155; +v158=v21[3]; +v21[3]=g157; +v160=v4.depth_enable; +v4.depth_enable=g159; +v161=v2.framebufferWidth; +v162=v2.framebufferHeight; +v164=v37[0]; +v37[0]=g163; +v166=v37[1]; +v37[1]=g165; +v167=v37[2]; +v37[2]=v161; +v168=v37[3]; +v37[3]=v162; +v169=v5.profile; +if(v169){ +v170=performance.now(); +g48.count++; +} +v172=v6.count; +v6.count=g171; +v175=v12[g174]; +v12[g174]=g173; +v176=a0["positions"]; +v177=false; +v178=1; +v179=0; +v180=0; +v181=0; +v182=0; +v183=null; +v184=0; +v185=false; +v186=5126; +v187=0; +v188=0; +v189=0; +if(v16(v176)){ +v177=true; +v183=v8.createStream(34962,v176); +v186=v183.dtype; +} +else{ +v183=v8.getBuffer(v176); +if(v183){ +v186=v183.dtype; +} +else if("constant" in v176){ +v178=2; +if(typeof v176.constant === "number"){ +v179=v176.constant; +v180=v181=v182=0; +} +else{ +v179=v176.constant.length>0?v176.constant[0]:0; +v180=v176.constant.length>1?v176.constant[1]:0; +v181=v176.constant.length>2?v176.constant[2]:0; +v182=v176.constant.length>3?v176.constant[3]:0; +} +} +else{ +if(v16(v176.buffer)){ +v183=v8.createStream(34962,v176.buffer); +} +else{ +v183=v8.getBuffer(v176.buffer); +} +v186="type" in v176?v46[v176.type]:v183.dtype; +v185=!!v176.normalized; +v184=v176.size|0; +v187=v176.offset|0; +v188=v176.stride|0; +v189=v176.divisor|0; +} +} +v191=g190.state; +g190.state=v178; +v192=g190.x; +g190.x=v179; +v193=g190.y; +g190.y=v180; +v194=g190.z; +g190.z=v181; +v195=g190.w; +g190.w=v182; +v196=g190.buffer; +g190.buffer=v183; +v197=g190.size; +g190.size=v184; +v198=g190.normalized; +g190.normalized=v185; +v199=g190.type; +g190.type=v186; +v200=g190.offset; +g190.offset=v187; +v201=g190.stride; +g190.stride=v188; +v202=g190.divisor; +g190.divisor=v189; +v204=v9.vert; +v9.vert=g203; +v206=v9.frag; +v9.frag=g205; +v5.dirty=true; +a1(v2,a0,a2); +v13.next=v134; +v2.framebufferWidth=v135; +v2.framebufferHeight=v136; +v2.viewportWidth=v143; +v2.viewportHeight=v144; +v39[0]=v145; +v39[1]=v146; +v39[2]=v147; +v39[3]=v148; +v4.blend_enable=v150; +v21[0]=v152; +v21[1]=v154; +v21[2]=v156; +v21[3]=v158; +v4.depth_enable=v160; +v37[0]=v164; +v37[1]=v166; +v37[2]=v167; +v37[3]=v168; +if(v169){ +g48.cpuTime+=performance.now()-v170; +} +v6.count=v172; +v12[g174]=v175; +if(v177){ +v8.destroyStream(v183); +} +g190.state=v191; +g190.x=v192; +g190.y=v193; +g190.z=v194; +g190.w=v195; +g190.buffer=v196; +g190.size=v197; +g190.normalized=v198; +g190.type=v199; +g190.offset=v200; +g190.stride=v201; +g190.divisor=v202; +v9.vert=v204; +v9.frag=v206; +v5.dirty=true; +} +,"batch":function(a0,a1){ +var v207,v208,v209,v210,v251,v252,v253,v254,v255,v256,v257,v258,v261,v262,v263,v264,v265,v266,v267; +v207=v14.angle_instanced_arrays; +v208=v13.next; +v13.next=null; +v209=v2.framebufferWidth; +v2.framebufferWidth=v2.drawingBufferWidth; +v210=v2.framebufferHeight; +v2.framebufferHeight=v2.drawingBufferHeight; +if(null!==v13.cur){ +if(null){ +v1.bindFramebuffer(36160,null.framebuffer); +} +else{ +v1.bindFramebuffer(36160,null); +} +v13.cur=null; +} +if(v5.dirty){ +var v211,v212,v213,v214,v215,v216,v217,v218,v219,v220,v221,v222,v223,v224,v225,v226,v227,v228,v229,v230,v231,v232,v233,v234,v235,v236,v237,v238,v239,v240,v241,v242,v243,v244,v245,v246,v247,v248,v249,v250; +v211=v4.dither; +if(v211!==v5.dither){ +if(v211){ +v1.enable(3024); +} +else{ +v1.disable(3024); +} +v5.dither=v211; +} +v212=v17[0]; +v213=v17[1]; +v214=v17[2]; +v215=v17[3]; +if(v212!==v18[0]||v213!==v18[1]||v214!==v18[2]||v215!==v18[3]){ +v1.blendColor(v212,v213,v214,v215); +v18[0]=v212; +v18[1]=v213; +v18[2]=v214; +v18[3]=v215; +} +v216=v19[0]; +v217=v19[1]; +if(v216!==v20[0]||v217!==v20[1]){ +v1.blendEquationSeparate(v216,v217); +v20[0]=v216; +v20[1]=v217; +} +v218=v4.depth_func; +if(v218!==v5.depth_func){ +v1.depthFunc(v218); +v5.depth_func=v218; +} +v219=v23[0]; +v220=v23[1]; +if(v219!==v24[0]||v220!==v24[1]){ +v1.depthRange(v219,v220); +v24[0]=v219; +v24[1]=v220; +} +v221=v4.depth_mask; +if(v221!==v5.depth_mask){ +v1.depthMask(v221); +v5.depth_mask=v221; +} +v222=v25[0]; +v223=v25[1]; +v224=v25[2]; +v225=v25[3]; +if(v222!==v26[0]||v223!==v26[1]||v224!==v26[2]||v225!==v26[3]){ +v1.colorMask(v222,v223,v224,v225); +v26[0]=v222; +v26[1]=v223; +v26[2]=v224; +v26[3]=v225; +} +v226=v4.cull_enable; +if(v226!==v5.cull_enable){ +if(v226){ +v1.enable(2884); +} +else{ +v1.disable(2884); +} +v5.cull_enable=v226; +} +v227=v4.cull_face; +if(v227!==v5.cull_face){ +v1.cullFace(v227); +v5.cull_face=v227; +} +v228=v4.frontFace; +if(v228!==v5.frontFace){ +v1.frontFace(v228); +v5.frontFace=v228; +} +v229=v4.lineWidth; +if(v229!==v5.lineWidth){ +v1.lineWidth(v229); +v5.lineWidth=v229; +} +v230=v4.polygonOffset_enable; +if(v230!==v5.polygonOffset_enable){ +if(v230){ +v1.enable(32823); +} +else{ +v1.disable(32823); +} +v5.polygonOffset_enable=v230; +} +v231=v27[0]; +v232=v27[1]; +if(v231!==v28[0]||v232!==v28[1]){ +v1.polygonOffset(v231,v232); +v28[0]=v231; +v28[1]=v232; +} +v233=v4.sample_alpha; +if(v233!==v5.sample_alpha){ +if(v233){ +v1.enable(32926); +} +else{ +v1.disable(32926); +} +v5.sample_alpha=v233; +} +v234=v4.sample_enable; +if(v234!==v5.sample_enable){ +if(v234){ +v1.enable(32928); +} +else{ +v1.disable(32928); +} +v5.sample_enable=v234; +} +v235=v29[0]; +v236=v29[1]; +if(v235!==v30[0]||v236!==v30[1]){ +v1.sampleCoverage(v235,v236); +v30[0]=v235; +v30[1]=v236; +} +v237=v4.stencil_enable; +if(v237!==v5.stencil_enable){ +if(v237){ +v1.enable(2960); +} +else{ +v1.disable(2960); +} +v5.stencil_enable=v237; +} +v238=v4.stencil_mask; +if(v238!==v5.stencil_mask){ +v1.stencilMask(v238); +v5.stencil_mask=v238; +} +v239=v31[0]; +v240=v31[1]; +v241=v31[2]; +if(v239!==v32[0]||v240!==v32[1]||v241!==v32[2]){ +v1.stencilFunc(v239,v240,v241); +v32[0]=v239; +v32[1]=v240; +v32[2]=v241; +} +v242=v33[0]; +v243=v33[1]; +v244=v33[2]; +v245=v33[3]; +if(v242!==v34[0]||v243!==v34[1]||v244!==v34[2]||v245!==v34[3]){ +v1.stencilOpSeparate(v242,v243,v244,v245); +v34[0]=v242; +v34[1]=v243; +v34[2]=v244; +v34[3]=v245; +} +v246=v35[0]; +v247=v35[1]; +v248=v35[2]; +v249=v35[3]; +if(v246!==v36[0]||v247!==v36[1]||v248!==v36[2]||v249!==v36[3]){ +v1.stencilOpSeparate(v246,v247,v248,v249); +v36[0]=v246; +v36[1]=v247; +v36[2]=v248; +v36[3]=v249; +} +v250=v4.scissor_enable; +if(v250!==v5.scissor_enable){ +if(v250){ +v1.enable(3089); +} +else{ +v1.disable(3089); +} +v5.scissor_enable=v250; +} +} +v251=v2["drawingBufferWidth"]; +v49.width=v251; +v252=v2["drawingBufferHeight"]; +v49.height=v252; +v253=v49.x|0; +v254=v49.y|0; +v255="width" in v49?v49.width|0:(v2.framebufferWidth-v253); +v256="height" in v49?v49.height|0:(v2.framebufferHeight-v254); +v257=v2.viewportWidth; +v2.viewportWidth=v255; +v258=v2.viewportHeight; +v2.viewportHeight=v256; +v1.viewport(v253,v254,v255,v256); +v40[0]=v253; +v40[1]=v254; +v40[2]=v255; +v40[3]=v256; +if(g259){ +v1.enable(3042); +} +else{ +v1.disable(3042); +} +v5.blend_enable=g259; +v1.blendFuncSeparate(1,771,1,771); +v22[0]=1; +v22[1]=771; +v22[2]=1; +v22[3]=771; +if(g260){ +v1.enable(2929); +} +else{ +v1.disable(2929); +} +v5.depth_enable=g260; +v261=v2.framebufferWidth; +v262=v2.framebufferHeight; +v1.scissor(0,0,v261,v262); +v38[0]=0; +v38[1]=0; +v38[2]=v261; +v38[3]=v262; +v263=v5.profile; +if(v263){ +v264=performance.now(); +g48.count+=a1; +} +v1.useProgram(g108.program); +v265=v14.angle_instanced_arrays; +var v285,v286,v287,v288; +v11.setVAO(null); +v1.uniform1i(g128.location,g129.bind()); +v285=v6.elements; +if(v285){ +v1.bindBuffer(34963,v285.buffer.buffer); +} +else if(v11.currentVAO){ +v285=v7.getElements(v11.currentVAO.elements); +if(v285)v1.bindBuffer(34963,v285.buffer.buffer); +} +v286=v6.primitive; +v287=v6.offset; +v288=v6.instances; +for(v266=0; +v2660?v268.constant[0]:0; +v272=v268.constant.length>1?v268.constant[1]:0; +v273=v268.constant.length>2?v268.constant[2]:0; +v274=v268.constant.length>3?v268.constant[3]:0; +} +} +else{ +if(v16(v268.buffer)){ +v275=v8.createStream(34962,v268.buffer); +} +else{ +v275=v8.getBuffer(v268.buffer); +} +v278="type" in v268?v46[v268.type]:v275.dtype; +v277=!!v268.normalized; +v276=v268.size|0; +v279=v268.offset|0; +v280=v268.stride|0; +v281=v268.divisor|0; +} +} +v282=g124.location; +v283=v10[v282]; +if(v270===1){ +if(!v283.buffer){ +v1.enableVertexAttribArray(v282); +} +v284=v276||2; +if(v283.type!==v278||v283.size!==v284||v283.buffer!==v275||v283.normalized!==v277||v283.offset!==v279||v283.stride!==v280){ +v1.bindBuffer(34962,v275.buffer); +v1.vertexAttribPointer(v282,v284,v278,v277,v280,v279); +v283.type=v278; +v283.size=v284; +v283.buffer=v275; +v283.normalized=v277; +v283.offset=v279; +v283.stride=v280; +} +if(v283.divisor!==v281){ +v265.vertexAttribDivisorANGLE(v282,v281); +v283.divisor=v281; +} +} +else{ +if(v283.buffer){ +v1.disableVertexAttribArray(v282); +v283.buffer=null; +} +if(v283.x!==v271||v283.y!==v272||v283.z!==v273||v283.w!==v274){ +v1.vertexAttrib4f(v282,v271,v272,v273,v274); +v283.x=v271; +v283.y=v272; +v283.z=v273; +v283.w=v274; +} +} +if(v288>0){ +if(v285){ +v265.drawElementsInstancedANGLE(v286,3,v285.type,v287<<((v285.type-5121)>>1),v288); +} +else{ +v265.drawArraysInstancedANGLE(v286,v287,3,v288); +} +} +else if(v288<0){ +if(v285){ +v1.drawElements(v286,3,v285.type,v287<<((v285.type-5121)>>1)); +} +else{ +v1.drawArrays(v286,v287,3); +} +} +if(v269){ +v8.destroyStream(v275); +} +} +g129.unbind(); +v5.dirty=true; +v11.setVAO(null); +v13.next=v208; +v2.framebufferWidth=v209; +v2.framebufferHeight=v210; +v2.viewportWidth=v257; +v2.viewportHeight=v258; +if(v263){ +g48.cpuTime+=performance.now()-v264; +} +} +,} + +} \ No newline at end of file diff --git a/src/plot_api/subroutines.js b/src/plot_api/subroutines.js index 666f3e7b6a5..3b45df635bd 100644 --- a/src/plot_api/subroutines.js +++ b/src/plot_api/subroutines.js @@ -772,6 +772,7 @@ exports.redrawReglTraces = function(gd) { var fullData = gd._fullData; var cartesianIds = []; var polarIds = []; + var ternaryIds = []; var i, sp; if(fullLayout._hasOnlyLargeSploms) { @@ -792,6 +793,8 @@ exports.redrawReglTraces = function(gd) { Lib.pushUnique(cartesianIds, trace.xaxis + trace.yaxis); } else if(trace.type === 'scatterpolargl') { Lib.pushUnique(polarIds, trace.subplot); + } else if(trace.type === 'scatterternarygl') { + Lib.pushUnique(ternaryIds, trace.subplot); } } } @@ -805,6 +808,11 @@ exports.redrawReglTraces = function(gd) { sp = fullLayout[polarIds[i]]._subplot; if(sp._scene) sp._scene.draw(); } + + for(i = 0; i < ternaryIds.length; i++) { + sp = fullLayout[ternaryIds[i]]._subplot; + if(sp._scene) sp._scene.draw(); + } } }; diff --git a/src/plots/ternary/index.js b/src/plots/ternary/index.js index 12147231744..1845f67b049 100644 --- a/src/plots/ternary/index.js +++ b/src/plots/ternary/index.js @@ -2,6 +2,7 @@ var Ternary = require('./ternary'); +var Registry = require('../../registry'); var getSubplotCalcData = require('../../plots/get_data').getSubplotCalcData; var counterRegex = require('../../lib').counterRegex; var TERNARY = 'ternary'; @@ -64,9 +65,25 @@ exports.clean = function(newFullData, newFullLayout, oldFullData, oldFullLayout) for(var i = 0; i < oldTernaryKeys.length; i++) { var oldTernaryKey = oldTernaryKeys[i]; var oldTernary = oldFullLayout[oldTernaryKey]._subplot; + var newTernary = newFullLayout[oldTernaryKey]; + + if(oldTernary && oldTernary._scene) { + var hasRegl = newFullData.some(function(trace) { + return ( + trace.visible === true && + trace.subplot === oldTernaryKey && + Registry.traceIs(trace, 'regl') + ); + }); + + if(!newTernary || !hasRegl) { + oldTernary._scene.destroy(); + } + } - if(!newFullLayout[oldTernaryKey] && !!oldTernary) { + if(!newTernary && oldTernary) { oldTernary.plotContainer.remove(); + if(oldTernary.topPlotContainer) oldTernary.topPlotContainer.remove(); oldTernary.clipDef.remove(); oldTernary.clipDefRelative.remove(); oldTernary.layers['a-title'].remove(); @@ -76,6 +93,8 @@ exports.clean = function(newFullData, newFullLayout, oldFullData, oldFullLayout) } }; +exports.toSVG = require('../cartesian').toSVG; + exports.updateFx = function(gd) { var fullLayout = gd._fullLayout; fullLayout._ternarylayer diff --git a/src/plots/ternary/ternary.js b/src/plots/ternary/ternary.js index 836bee45a8f..1ced995ca4a 100644 --- a/src/plots/ternary/ternary.js +++ b/src/plots/ternary/ternary.js @@ -4,6 +4,8 @@ var d3 = require('@plotly/d3'); var Registry = require('../../registry'); var Lib = require('../../lib'); +var clearGlCanvases = require('../../lib/clear_gl_canvases'); +var redrawReglTraces = require('../../plot_api/subroutines').redrawReglTraces; var strTranslate = Lib.strTranslate; var _ = Lib._; var Color = require('../../components/color'); @@ -56,12 +58,17 @@ proto.plot = function(ternaryCalcData, fullLayout) { var graphSize = fullLayout._size; _this._hasClipOnAxisFalse = false; + _this._hasRegl = false; + for(var i = 0; i < ternaryCalcData.length; i++) { var trace = ternaryCalcData[i][0].trace; if(trace.cliponaxis === false) { _this._hasClipOnAxisFalse = true; - break; + } + + if(trace.visible === true && Registry.traceIs(trace, 'regl')) { + _this._hasRegl = true; } } @@ -107,6 +114,13 @@ proto.updateLayers = function(ternaryLayout) { var _this = this; var layers = _this.layers; + // restore promoted axes before reordering the ternary SVG layers + if(_this.topPlotContainer) { + _this.topPlotContainer.selectAll('g.toplevel').each(function() { + _this.plotContainer.node().appendChild(this); + }); + } + // inside that container, we have one container for the data, and // one each for the three axes around it. @@ -166,6 +180,25 @@ proto.updateLayers = function(ternaryLayout) { }); toplevel.order(); + + // move 'above traces' axes to the top SVG so they remain above regl traces + if(_this._hasRegl) { + if(!_this.topPlotContainer) { + _this.topPlotContainer = _this.graphDiv._fullLayout._toppaper + .insert('g', '.indicatorlayer') + .classed(_this.id + '-axis-above', true) + .style('pointer-events', 'none'); + } + + var topNode = _this.topPlotContainer.node(); + + ['a', 'b', 'c'].forEach(function(letter) { + if(ternaryLayout[letter + 'axis'].layer === 'above traces') { + topNode.appendChild(layers[letter + 'axis'].node()); + topNode.appendChild(layers[letter + 'line'].node()); + } + }); + } }; var whRatio = Math.sqrt(4 / 3); @@ -738,6 +771,20 @@ proto.initInteractions = function() { _this.drawAxes(false); + if (_this._scene) { + // update the projected cartesian range (x = c - b, y = a) and redraw regl traces while panning + _this._scene.update({ + range: [ + mins.a + 2 * mins.c - _this.sum, + mins.a, + _this.sum - mins.a - 2 * mins.b, + _this.sum - mins.b - mins.c + ] + }); + clearGlCanvases(gd); + redrawReglTraces(gd); + } + if(_this._hasClipOnAxisFalse) { _this.plotContainer .select('.scatterlayer').selectAll('.trace') diff --git a/src/traces/scatterternary/hover.js b/src/traces/scatterternary/hover.js index 404da45598b..30d3e63824e 100644 --- a/src/traces/scatterternary/hover.js +++ b/src/traces/scatterternary/hover.js @@ -6,11 +6,15 @@ module.exports = function hoverPoints(pointData, xval, yval, hovermode) { var scatterPointData = scatterHover(pointData, xval, yval, hovermode); if(!scatterPointData || scatterPointData[0].index === false) return; + return module.exports.formatPoint(scatterPointData, pointData); +}; + +module.exports.formatPoint = function(scatterPointData, pointData) { var newPointData = scatterPointData[0]; // if hovering on a fill, we don't show any point data so the label is // unchanged from what scatter gives us - except that it needs to - // be constrained to the trianglular plot area, not just the rectangular + // be constrained to the triangular plot area, not just the rectangular // area defined by the synthetic x and y axes // TODO: in some cases the vertical middle of the shape is not within // the triangular viewport at all, so the label can become disconnected diff --git a/src/traces/scatterternarygl/attributes.ts b/src/traces/scatterternarygl/attributes.ts new file mode 100644 index 00000000000..883e2485e6f --- /dev/null +++ b/src/traces/scatterternarygl/attributes.ts @@ -0,0 +1,39 @@ +import type { AttributeMap } from '../../types/lib/attributes'; + +// There is type warning when using import (ESM), keep using require for now +const ternaryAttrs = require('../scatterternary/attributes'); +const scatterGlAttrs = require('../scattergl/attributes'); + +// No cliponaxis and hoveron +const attributes = { + a: ternaryAttrs.a, + b: ternaryAttrs.b, + c: ternaryAttrs.c, + sum: ternaryAttrs.sum, + mode: ternaryAttrs.mode, + text: ternaryAttrs.text, + texttemplate: ternaryAttrs.texttemplate, + texttemplatefallback: ternaryAttrs.texttemplatefallback, + hoverinfo: ternaryAttrs.hoverinfo, + hovertext: ternaryAttrs.hovertext, + hovertemplate: ternaryAttrs.hovertemplate, + hovertemplatefallback: ternaryAttrs.hovertemplatefallback, + line: { + color: scatterGlAttrs.line.color, + width: scatterGlAttrs.line.width, + dash: scatterGlAttrs.line.dash, + // no backoff and smoothing + // and only 'linear' value for shape, so no need to expose + editType: 'calc' + }, + connectgaps: scatterGlAttrs.connectgaps, + fill: ternaryAttrs.fill, + fillcolor: scatterGlAttrs.fillcolor, + marker: scatterGlAttrs.marker, + textfont: scatterGlAttrs.textfont, + textposition: scatterGlAttrs.textposition, + selected: scatterGlAttrs.selected, + unselected: scatterGlAttrs.unselected +} as const satisfies AttributeMap; + +export default attributes; diff --git a/src/traces/scatterternarygl/base_index.js b/src/traces/scatterternarygl/base_index.js new file mode 100644 index 00000000000..5e1b9ae4066 --- /dev/null +++ b/src/traces/scatterternarygl/base_index.js @@ -0,0 +1,24 @@ +'use strict'; + +module.exports = { + moduleType: 'trace', + name: 'scatterternarygl', + basePlotModule: require('../../plots/ternary'), + categories: ['gl', 'regl', 'ternary', 'symbols', 'showLegend', 'scatter-like'], + attributes: require('./attributes').default, + supplyDefaults: require('./defaults'), + calc: require('./calc'), + colorbar: require('../scatter/marker_colorbar'), + formatLabels: require('./format_labels'), + hoverPoints: require('./hover'), + selectPoints: require('../scattergl/select'), + eventData: require('./event_data'), + meta: { + hrName: 'scatter_ternary_gl', + description: [ + 'Provides similar functionality to the *scatter* type but on a ternary phase diagram', + 'using the WebGL plotting engine.', + 'The data is provided by at least two arrays out of `a`, `b`, `c` triplets.' + ].join(' ') + } +}; diff --git a/src/traces/scatterternarygl/calc.js b/src/traces/scatterternarygl/calc.js new file mode 100644 index 00000000000..39321d39fae --- /dev/null +++ b/src/traces/scatterternarygl/calc.js @@ -0,0 +1,76 @@ +'use strict'; + +const isNumeric = require('fast-isnumeric'); +const cluster = require('@plotly/point-cluster'); + +const calcColorscale = require('../scatter/colorscale_calc'); +const TOO_MANY_POINTS = require("../scattergl/constants"); + +module.exports = function calc(gd, trace) { + const displaySum = gd._fullLayout[trace.subplot].sum; + const normSum = trace.sum || displaySum; + + const len = trace._length; + const aIn = trace.a; + const bIn = trace.b; + const cIn = trace.c; + const a = (trace._a = new Float64Array(len)); + const b = (trace._b = new Float64Array(len)); + const c = (trace._c = new Float64Array(len)); + const x = new Float64Array(len); + const positions = new Array(len * 2); + const hasTooManyPoints = len >= TOO_MANY_POINTS; + const ids = hasTooManyPoints ? null : new Array(len); + + for (let i = 0; i < len; i++) { + // infer the missing component from the other two + let ai = aIn ? aIn[i] : normSum - bIn[i] - cIn[i]; + let bi = bIn ? bIn[i] : normSum - aIn[i] - cIn[i]; + let ci = cIn ? cIn[i] : normSum - aIn[i] - bIn[i]; + + if (isNumeric(ai) && isNumeric(bi) && isNumeric(ci)) { + ai = +ai; + bi = +bi; + ci = +ci; + + const total = ai + bi + ci; + + if (Number.isFinite(total) && total !== 0) { + const norm = displaySum / total; + ai *= norm; + bi *= norm; + ci *= norm; + } else { + ai = bi = ci = NaN; + } + } else { + ai = bi = ci = NaN; + } + + if (!Number.isFinite(ai) || !Number.isFinite(bi) || !Number.isFinite(ci)) { + ai = bi = ci = NaN; + } + + a[i] = ai; + b[i] = bi; + c[i] = ci; + x[i] = positions[2 * i] = ci - bi; + positions[2 * i + 1] = ai; + + if(ids) ids[i] = i; + } + + calcColorscale(gd, trace); + + // adopt the same approach of scattergl: build the tree only when len >= TOO_MANY_POINTS + // caveat: see https://github.com/plotly/plotly.js/pull/8052 + const stash = { a, b, c, x, y: a, rawx: x, rawy: a, positions }; + + if(hasTooManyPoints) { + stash.tree = cluster(positions); + } else { + stash.ids = ids; + } + + return [{ x: false, y: false, t: stash, trace }]; +}; diff --git a/src/traces/scatterternarygl/defaults.js b/src/traces/scatterternarygl/defaults.js new file mode 100644 index 00000000000..de6217d1f18 --- /dev/null +++ b/src/traces/scatterternarygl/defaults.js @@ -0,0 +1,89 @@ +'use strict'; + +const Lib = require('../../lib'); + +const subTypes = require('../scatter/subtypes'); +const handleMarkerDefaults = require('../scatter/marker_defaults'); +const handleLineDefaults = require('../scatter/line_defaults'); +const handleTextDefaults = require('../scatter/text_defaults'); +const handleFillColorDefaults = require('../scatter/fillcolor_defaults'); +const helpers = require('../scattergl/helpers'); +const PTS_LINESONLY = require('../scatter/constants').PTS_LINESONLY; + + +const attributes = require('./attributes').default; + +module.exports = function supplyDefaults(traceIn, traceOut, defaultColor, layout) { + function coerce(attr, dflt) { + return Lib.coerce(traceIn, traceOut, attributes, attr, dflt); + } + + var isOpen = traceIn.marker ? helpers.isOpenSymbol(traceIn.marker.symbol) : false; + const isBubble = subTypes.isBubble(traceIn); + + const a = coerce('a'); + const b = coerce('b'); + const c = coerce('c'); + + const componentCount = Number(!!a) + Number(!!b) + Number(!!c); + + // allow any one array to be missing + const len = componentCount < 2 + ? 0 + : Math.min( + a?.length ?? Infinity, + b?.length ?? Infinity, + c?.length ?? Infinity + ); + + if (!len) { + traceOut.visible = false; + return; + } + + traceOut._length = len; + + coerce('sum'); + + coerce('text'); + coerce('hovertext'); + coerce('hovertemplate'); + coerce('hovertemplatefallback'); + + coerce('mode', len < PTS_LINESONLY ? 'lines+markers' : 'lines'); + + if (subTypes.hasMarkers(traceOut)) { + handleMarkerDefaults(traceIn, traceOut, defaultColor, layout, coerce, { + noAngleRef: true, + noLineDash: true, + noStandOff: true + }); + coerce('marker.line.width', isOpen || isBubble ? 1 : 0); + } + + if (subTypes.hasLines(traceOut)) { + handleLineDefaults(traceIn, traceOut, defaultColor, layout, coerce); + coerce('connectgaps'); + } + + if (subTypes.hasText(traceOut)) { + coerce('texttemplate'); + coerce('texttemplatefallback'); + handleTextDefaults(traceIn, traceOut, layout, coerce, { + noFontShadow: true, + noFontLineposition: true, + noFontTextcase: true + }); + } + + // no cliponaxis + + coerce('fill'); + if (traceOut.fill !== 'none') { + handleFillColorDefaults(traceIn, traceOut, defaultColor, coerce); + } + + // no hoveron + + Lib.coerceSelectionMarkerOpacity(traceOut, coerce); +}; diff --git a/src/traces/scatterternarygl/event_data.js b/src/traces/scatterternarygl/event_data.js new file mode 100644 index 00000000000..379ac5dc53c --- /dev/null +++ b/src/traces/scatterternarygl/event_data.js @@ -0,0 +1,15 @@ +'use strict'; + +module.exports = function (out, pt, trace, cd, pointNumber) { + if (pt.xa) out.xaxis = pt.xa; + if (pt.ya) out.yaxis = pt.ya; + + // normalized coordinates are stored in trace._a, _b and _c in ../calc.js + out.a = trace._a[pointNumber]; + out.b = trace._b[pointNumber]; + out.c = trace._c[pointNumber]; + + // no fill-hover because scattergl (scatterternarygl) does not currently support hoveron + + return out; +}; diff --git a/src/traces/scatterternarygl/format_labels.js b/src/traces/scatterternarygl/format_labels.js new file mode 100644 index 00000000000..7a1a7482b5d --- /dev/null +++ b/src/traces/scatterternarygl/format_labels.js @@ -0,0 +1,13 @@ +'use strict'; + +const scatterTernaryFormatLabels = require('../scatterternary/format_labels'); + +module.exports = function (cdi, trace, fullLayout) { + const i = cdi.i; + + if (!('a' in cdi)) cdi.a = trace._a[i]; + if (!('b' in cdi)) cdi.b = trace._b[i]; + if (!('c' in cdi)) cdi.c = trace._c[i]; + + return scatterTernaryFormatLabels(cdi, trace, fullLayout); +}; diff --git a/src/traces/scatterternarygl/hover.js b/src/traces/scatterternarygl/hover.js new file mode 100644 index 00000000000..a4481ca855f --- /dev/null +++ b/src/traces/scatterternarygl/hover.js @@ -0,0 +1,26 @@ +'use strict'; + +const hover = require('../scattergl/hover'); +const ternaryHover = require('../scatterternary/hover'); + +module.exports = function (pointData, xval, yval, hovermode) { + const cd = pointData.cd; + const stash = cd[0].t; + + const scatterPointData = hover.hoverPoints(pointData, xval, yval, hovermode); + + // scattergl may return pointData without an index when no point is found + if (!scatterPointData || scatterPointData[0].index === undefined || scatterPointData[0].index === false) return; + + const point = scatterPointData[0]; + const i = point.index; + const cdi = point.cd[i]; + + cdi.a = stash.a[i]; + cdi.b = stash.b[i]; + cdi.c = stash.c[i]; + + ternaryHover.formatPoint(scatterPointData, pointData); + + return scatterPointData; +}; diff --git a/src/traces/scatterternarygl/index.js b/src/traces/scatterternarygl/index.js new file mode 100644 index 00000000000..fcabd3a5437 --- /dev/null +++ b/src/traces/scatterternarygl/index.js @@ -0,0 +1,7 @@ +'use strict'; + +var index = require('./base_index'); + +index.plot = require('./plot'); + +module.exports = index; diff --git a/src/traces/scatterternarygl/plot.js b/src/traces/scatterternarygl/plot.js new file mode 100644 index 00000000000..fc3ead03fcc --- /dev/null +++ b/src/traces/scatterternarygl/plot.js @@ -0,0 +1,198 @@ +'use strict'; + +const Lib = require("../../lib"); +const prepareRegl = require('../../lib/prepare_regl'); + +const scatterglPlot = require('../scattergl/plot'); +const sceneUpdate = require('../scattergl/scene_update'); +const convert = require('../scattergl/convert'); +const TOO_MANY_POINTS = require('../scattergl/constants').TOO_MANY_POINTS; + +const reglPrecompiled = {}; + +const vertexShaderSource = [ + 'precision highp float;', + 'attribute vec2 position;', + 'varying vec2 uv;', + 'void main() {', + ' uv = position;', + ' gl_Position = vec4(position * 2.0 - 1.0, 0.0, 1.0);', + '}' +].join('\n'); + +const fragmentShaderSource = [ + 'precision highp float;', + 'uniform sampler2D source;', + 'varying vec2 uv;', + 'void main() {', + ' gl_FragColor = texture2D(source, uv);', + '}' +].join('\n'); + +module.exports = function plot(gd, subplot, moduleCalcData) { + if (!moduleCalcData.length) return; + + const scene = sceneUpdate(gd, subplot); + + for (const [cd] of moduleCalcData) { + const trace = cd.trace; + const stash = cd.t; + const positions = stash.positions; + const opts = convert.style(gd, trace); + const len = trace._length; + + trace._xA = subplot.xaxis; + trace._yA = subplot.yaxis; + + // re-build x/y for hover/select/zoom + const x = (stash.x = new Float64Array(len)); + const y = (stash.y = new Float64Array(len)); + + const amin = subplot.aaxis.range[0]; + const bmin = subplot.baxis.range[1]; + const cmin = subplot.caxis.range[1]; + + for (let i = 0; i < len; i++) { + const inside = stash.a[i] >= amin && stash.b[i] >= bmin && stash.c[i] >= cmin; + + x[i] = inside ? stash.rawx[i] : NaN; + y[i] = inside ? stash.rawy[i] : NaN; + } + + if (opts.marker) { + opts.marker.positions = opts.markerSel.positions = opts.markerUnsel.positions = positions; + + if (len >= TOO_MANY_POINTS) { + opts.marker.cluster = stash.tree; + } + + scene.scatter2d = scene.scatter2d || true; + } + + if (opts.line) { + Lib.extendFlat(opts.line, convert.linePositions(gd, trace, positions)); + + scene.line2d = scene.line2d || true; + } + + if (opts.fill) { + scene.fill2d = scene.fill2d || true; + } + + if (opts.text) { + Lib.extendFlat( + opts.text, + {positions: positions}, + convert.textPosition(gd, trace, opts.text, opts.marker) + ); + Lib.extendFlat( + opts.textSel, + {positions: positions}, + convert.textPosition(gd, trace, opts.text, opts.markerSel) + ); + Lib.extendFlat( + opts.textUnsel, + {positions: positions}, + convert.textPosition(gd, trace, opts.text, opts.markerUnsel) + ); + + scene.glText = scene.glText || true; + } + + scene.lineOptions.push(opts.line); + scene.fillOptions.push(opts.fill); + scene.markerOptions.push(opts.marker); + scene.markerSelectedOptions.push(opts.markerSel); + scene.markerUnselectedOptions.push(opts.markerUnsel); + scene.textOptions.push(opts.text); + scene.textSelectedOptions.push(opts.textSel); + scene.textUnselectedOptions.push(opts.textUnsel); + scene.selectBatch.push([]); + scene.unselectBatch.push([]); + + stash._scene = scene; + stash.index = scene.count++; + } + + if (!prepareRegl(gd, ['ANGLE_instanced_arrays', 'OES_element_index_uint'], reglPrecompiled)) { + scene.init(); + return; + } + + scatterglPlot(gd, subplot, moduleCalcData); + + // create the ternary clipping layer once for the lifetime of scattergl scene + if (scene.ternaryClip) return; + + // render the shared scattergl layers offscreen, then composite them through a triangle + const targets = (scene.ternaryClip = gd._fullLayout._glcanvas + .data() + .slice(0, 2) // scattergl uses contextLayer and focusLayer + .map(({ regl }) => { + const framebuffer = regl.framebuffer({ width: 1, height: 1, depth: false, stencil: false }); + const scope = regl({ framebuffer }); + const composite = regl({ + framebuffer: null, // render to the canvas drawing buffer + viewport: { + x: 0, + y: 0, + width: regl.context('drawingBufferWidth'), + height: regl.context('drawingBufferHeight') + }, + vert: vertexShaderSource, + frag: fragmentShaderSource, + attributes: { position: regl.prop('positions') }, + uniforms: { source: framebuffer }, + count: 3, + depth: { enable: false }, + blend: { enable: true, func: { src: 'one', dst: 'one minus src alpha' } } + }); + + return { regl, framebuffer, scope, composite }; + })); + + const draw = scene.draw; + const destroy = scene.destroy; + + scene.draw = () => { + const layout = gd._fullLayout; + + const left = subplot.x0 / layout.width; + const right = (subplot.x0 + subplot.w) / layout.width; + const bottom = 1 - (subplot.y0 + subplot.h) / layout.height; + const top = 1 - subplot.y0 / layout.height; + + const positions = [ + [left, bottom], + [right, bottom], + [(left + right) / 2, top] + ]; + + for (const target of targets) { + const canvas = target.regl._gl.canvas; + + if (target.framebuffer.width !== canvas.width || target.framebuffer.height !== canvas.height) { + target.framebuffer.resize(canvas.width, canvas.height); + } + + target.scope(() => target.regl.clear({ color: [0, 0, 0, 0] })); + } + + // draw once while both contexts are scoped to their framebuffers + targets[0].scope(() => targets[1].scope(draw)); + + for (const target of targets) { + target.composite({ positions }); + } + }; + + scene.destroy = () => { + for (const target of targets) { + target.framebuffer.destroy(); + } + + destroy(); + }; +}; + +module.exports.reglPrecompiled = reglPrecompiled; diff --git a/src/traces/scatterternarygl/plot_strict.js b/src/traces/scatterternarygl/plot_strict.js new file mode 100644 index 00000000000..22e9ed10739 --- /dev/null +++ b/src/traces/scatterternarygl/plot_strict.js @@ -0,0 +1,13 @@ +'use strict'; + +var plot = require('./plot'); + +var reglPrecompiled = require('./regl_precompiled'); + +var reglPrecompiledDep = require('../scattergl/regl_precompiled'); + +Object.assign(plot.reglPrecompiled, reglPrecompiled); + +Object.assign(plot.reglPrecompiled, reglPrecompiledDep); + +module.exports = plot; \ No newline at end of file diff --git a/src/traces/scatterternarygl/regl_precompiled.js b/src/traces/scatterternarygl/regl_precompiled.js new file mode 100644 index 00000000000..5d187f993ac --- /dev/null +++ b/src/traces/scatterternarygl/regl_precompiled.js @@ -0,0 +1,27 @@ +'use strict'; +var v0 = require('../../generated/regl-codegen/3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b'); +var v1 = require('../../generated/regl-codegen/49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210'); +var v2 = require('../../generated/regl-codegen/8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034'); +var v3 = require('../../generated/regl-codegen/8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623'); +var v4 = require('../../generated/regl-codegen/a05bf3c1b12ac6d06248a1605bddec766ce3c5beca448738b9fcb95625273f0b'); +var v5 = require('../../generated/regl-codegen/ac155a28876770d366446d2217773f063d32b967782ca4b908945212df473aa8'); +var v6 = require('../../generated/regl-codegen/bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019'); +var v7 = require('../../generated/regl-codegen/cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81'); +var v8 = require('../../generated/regl-codegen/db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d'); +var v9 = require('../../generated/regl-codegen/dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5'); +var v10 = require('../../generated/regl-codegen/fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7'); + +/* eslint-disable quote-props */ +module.exports = { + '3e771157d23b4793771f65d83e6387262ed73d488209157f19a7fa027bddd71b': v0, + '49e82bba439f1d9d441c17ba252d05640bc63fefdf22d1219993633af7730210': v1, + '8902aff2b23b600f8103bcc84a8af2999d28795208aedadc2db06f921f9c7034': v2, + '8fad2284703471df7c0e0d0a7b96d983e8c53f6d707dd55d5921c1eab71f6623': v3, + 'a05bf3c1b12ac6d06248a1605bddec766ce3c5beca448738b9fcb95625273f0b': v4, + 'ac155a28876770d366446d2217773f063d32b967782ca4b908945212df473aa8': v5, + 'bfc540da96a87fcc039073cb37b45e6b81ef5ee6ef3529d726ceed8336354019': v6, + 'cbf700f001fff25b649fba9c37fa0dc6631c1cdee318ad49473d28ec10dcee81': v7, + 'db1b82c68771e7f5012fad1fbdae7ff23b526e58d2995bf6dd2cf30024e0f41d': v8, + 'dbd1cc9126a137a605df67dc0706e55116f04e33b4545a80042031752de5aef5': v9, + 'fe5b6844077cde1bdd7273f4495969fad93500c26a69b62e74ec2664c447bcc7': v10 +}; diff --git a/src/traces/scatterternarygl/strict.js b/src/traces/scatterternarygl/strict.js new file mode 100644 index 00000000000..ac040f94704 --- /dev/null +++ b/src/traces/scatterternarygl/strict.js @@ -0,0 +1,7 @@ +'use strict'; + +var index = require('./base_index'); + +index.plot = require('./plot_strict'); + +module.exports = index; \ No newline at end of file diff --git a/src/types/core/events.d.ts b/src/types/core/events.d.ts index 616fd80bebd..983395cf174 100644 --- a/src/types/core/events.d.ts +++ b/src/types/core/events.d.ts @@ -51,6 +51,12 @@ export interface PlotScatterDataPoint { * numbers. */ export interface PlotDatum { + /** Normalized ternary component a. */ + a?: number; + /** Normalized ternary component b. */ + b?: number; + /** Normalized ternary component c. */ + c?: number; /** Index of the trace producing this point. */ curveNumber: number; /** The trace this point belongs to. */ diff --git a/tasks/generate_entry_point_types.mjs b/tasks/generate_entry_point_types.mjs index f698423c713..6646b07e93e 100644 --- a/tasks/generate_entry_point_types.mjs +++ b/tasks/generate_entry_point_types.mjs @@ -126,7 +126,7 @@ const RE_NAME = /\bname: '([\w-]+)'/; /** * `var index = require('./base_index');` … `module.exports = index;` * - * Four gl traces (parcoords, scattergl, scatterpolargl, splom) build their + * Five gl traces (parcoords, scattergl, scatterpolargl, scatterternarygl, splom) build their * descriptor in `base_index.js` and patch one field in `index.js`, so the * lookup follows this single level of indirection. */ diff --git a/tasks/util/constants.js b/tasks/util/constants.js index 09a20a7a423..f8636c29ad1 100644 --- a/tasks/util/constants.js +++ b/tasks/util/constants.js @@ -127,6 +127,7 @@ var partialBundleTraces = { 'scatterpolargl', 'scattersmith', 'scatterternary', + 'scatterternarygl', 'splom', 'streamtube', 'sunburst', diff --git a/test/image/mocks/scatterternarygl_clipping.json b/test/image/mocks/scatterternarygl_clipping.json new file mode 100644 index 00000000000..44be021de71 --- /dev/null +++ b/test/image/mocks/scatterternarygl_clipping.json @@ -0,0 +1,80 @@ +{ + "data": [ + { + "type": "scatterternarygl", + "mode": "lines+markers", + "a": [ + 70, + 15, + 15, + 70 + ], + "b": [ + 15, + 70, + 15, + 15 + ], + "c": [ + 15, + 15, + 70, + 15 + ], + "line": { + "color": "#e11", + "width": 7 + }, + "marker": { + "color": "#e11", + "size": 24, + "line": { + "color": "#7f0000", + "width": 2 + } + } + } + ], + "layout": { + "ternary": { + "sum": 100, + "aaxis": { + "title": { + "text": "A" + }, + "min": 15, + "showgrid": true, + "showline": true, + "linecolor": "#333", + "linewidth": 3, + "layer": "above traces" + }, + "baxis": { + "title": { + "text": "B" + }, + "min": 15, + "showgrid": true, + "showline": true, + "linecolor": "#333", + "linewidth": 3, + "layer": "above traces" + }, + "caxis": { + "title": { + "text": "C" + }, + "min": 15, + "showgrid": true, + "showline": true, + "linecolor": "#333", + "linewidth": 3, + "layer": "above traces" + } + }, + "showlegend": false, + "width": 700, + "height": 500, + "autosize": false + } +} diff --git a/test/image/mocks/scatterternarygl_fills.json b/test/image/mocks/scatterternarygl_fills.json new file mode 100644 index 00000000000..f967bef63ab --- /dev/null +++ b/test/image/mocks/scatterternarygl_fills.json @@ -0,0 +1,118 @@ +{ + "data": [ + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 80, + 55, + 55, + 80 + ], + "b": [ + 10, + 35, + 10, + 10 + ], + "c": [ + 10, + 10, + 35, + 10 + ], + "fill": "toself", + "fillcolor": "rgba(99,110,250,0.35)", + "line": { + "color": "#636efa", + "width": 2 + }, + "name": "A-rich" + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 10, + 35, + 10, + 10 + ], + "b": [ + 80, + 55, + 55, + 80 + ], + "c": [ + 10, + 10, + 35, + 10 + ], + "fill": "toself", + "fillcolor": "rgba(239,85,59,0.35)", + "line": { + "color": "#ef553b", + "width": 2 + }, + "name": "B-rich" + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 10, + 35, + 10, + 10 + ], + "b": [ + 10, + 10, + 35, + 10 + ], + "c": [ + 80, + 55, + 55, + 80 + ], + "fill": "toself", + "fillcolor": "rgba(0,204,150,0.35)", + "line": { + "color": "#00cc96", + "width": 2 + }, + "name": "C-rich" + } + ], + "layout": { + "ternary": { + "sum": 100, + "aaxis": { + "title": { + "text": "A" + }, + "showgrid": true + }, + "baxis": { + "title": { + "text": "B" + }, + "showgrid": true + }, + "caxis": { + "title": { + "text": "C" + }, + "showgrid": true + } + }, + "showlegend": true, + "width": 700, + "height": 500, + "autosize": false + } +} diff --git a/test/image/mocks/scatterternarygl_lines.json b/test/image/mocks/scatterternarygl_lines.json new file mode 100644 index 00000000000..bce5fda30d6 --- /dev/null +++ b/test/image/mocks/scatterternarygl_lines.json @@ -0,0 +1,393 @@ +{ + "data": [ + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 0, + 10, + 0 + ], + "b": [ + 100, + 90, + 90 + ], + "c": [ + 0, + 0, + 10 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 0, + 10, + 15, + 0 + ], + "b": [ + 90, + 90, + 85, + 70 + ], + "c": [ + 10, + 0, + 0, + 30 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 0, + 15, + 20, + 20, + 5, + 5, + 0 + ], + "b": [ + 70, + 85, + 80, + 53, + 53, + 45, + 50 + ], + "c": [ + 30, + 0, + 0, + 32, + 42, + 50, + 50 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 20, + 35, + 35, + 28, + 20 + ], + "b": [ + 80, + 65, + 45, + 45, + 53 + ], + "c": [ + 0, + 0, + 20, + 27, + 32 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 35, + 35, + 55 + ], + "b": [ + 65, + 45, + 45 + ], + "c": [ + 0, + 20, + 0 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 55, + 100, + 60, + 40, + 40 + ], + "b": [ + 45, + 0, + 0, + 20, + 45 + ], + "c": [ + 0, + 0, + 40, + 40, + 15 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 40, + 40, + 28, + 28 + ], + "b": [ + 45, + 20, + 20, + 45 + ], + "c": [ + 15, + 40, + 52, + 27 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 60, + 40, + 40 + ], + "b": [ + 0, + 0, + 20 + ], + "c": [ + 40, + 60, + 40 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 28, + 28, + 40, + 40 + ], + "b": [ + 0, + 20, + 20, + 0 + ], + "c": [ + 72, + 52, + 40, + 60 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 0, + 28, + 28, + 12, + 12, + 0 + ], + "b": [ + 50, + 22, + 0, + 0, + 8, + 20 + ], + "c": [ + 50, + 50, + 72, + 88, + 80, + 80 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 0, + 0, + 12, + 12 + ], + "b": [ + 0, + 20, + 8, + 0 + ], + "c": [ + 100, + 80, + 80, + 88 + ], + "line": { + "color": "#c00" + } + }, + { + "type": "scatterternarygl", + "mode": "lines", + "a": [ + 28, + 28, + 5, + 5, + 20 + ], + "b": [ + 45, + 22, + 45, + 53, + 53 + ], + "c": [ + 27, + 50, + 50, + 42, + 32 + ], + "line": { + "color": "#c00" + } + } + ], + "layout": { + "ternary": { + "aaxis": { + "title": { + "text": "Clay" + }, + "min": 0.01, + "linewidth": 2, + "ticks": "outside", + "ticklen": 8, + "showgrid": true, + "tickvals": [ + 0.2, + 0.4, + 0.6, + 0.8 + ], + "ticktext": [ + "20%", + "40%", + "60%", + "80%" + ] + }, + "baxis": { + "title": { + "text": "Sand" + }, + "min": 0.01, + "linewidth": 2, + "ticks": "outside", + "ticklen": 8, + "showgrid": true, + "tickvals": [ + 0.2, + 0.4, + 0.6, + 0.8 + ], + "ticktext": [ + "20%", + "40%", + "60%", + "80%" + ] + }, + "caxis": { + "title": { + "text": "Silt" + }, + "min": 0.01, + "linewidth": 2, + "ticks": "outside", + "ticklen": 8, + "showgrid": true, + "tickvals": [ + 0.2, + 0.4, + 0.6, + 0.8 + ], + "ticktext": [ + "20%", + "40%", + "60%", + "80%" + ] + } + }, + "showlegend": false, + "width": 700, + "height": 450, + "autosize": false + } +} diff --git a/test/image/mocks/scatterternarygl_markers.json b/test/image/mocks/scatterternarygl_markers.json new file mode 100644 index 00000000000..d0028edf0fc --- /dev/null +++ b/test/image/mocks/scatterternarygl_markers.json @@ -0,0 +1,99 @@ +{ + "data": [ + { + "type": "scatterternarygl", + "mode": "markers+text", + "a": [ + 75, + 70, + 75, + 5, + 10, + 10, + 20, + 10, + 15, + 10, + 20 + ], + "b": [ + 25, + 10, + 20, + 60, + 80, + 90, + 70, + 20, + 5, + 10, + 10 + ], + "c": [ + 0, + 20, + 5, + 35, + 10, + 0, + 10, + 70, + 80, + 80, + 70 + ], + "text": [ + "1", + "2", + "3", + "4", + "5", + "6", + "7", + "8", + "9", + "10", + "11" + ], + "textposition": "top center", + "marker": { + "size": 12, + "color": "#636efa", + "line": { + "color": "#222", + "width": 1 + } + } + } + ], + "layout": { + "ternary": { + "sum": 100, + "aaxis": { + "title": { + "text": "A" + }, + "showline": true, + "showgrid": true + }, + "baxis": { + "title": { + "text": "B" + }, + "showline": true, + "showgrid": true + }, + "caxis": { + "title": { + "text": "C" + }, + "showline": true, + "showgrid": true + } + }, + "showlegend": false, + "width": 700, + "height": 500, + "autosize": false + } +} diff --git a/test/plot-schema.json b/test/plot-schema.json index 3f8728d1b01..c482b328b0b 100644 --- a/test/plot-schema.json +++ b/test/plot-schema.json @@ -73325,6 +73325,1940 @@ }, "type": "scatterternary" }, + "scatterternarygl": { + "animatable": false, + "attributes": { + "a": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "valType": "data_array" + }, + "b": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "valType": "data_array" + }, + "c": { + "description": "Sets the quantity of component `a` in each data point. If `a`, `b`, and `c` are all provided, they need not be normalized, only the relative values matter. If only two arrays are provided they must be normalized to match `ternary.sum`.", + "editType": "calc", + "valType": "data_array" + }, + "connectgaps": { + "description": "Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "customdata": { + "description": "Assigns extra data each datum. This may be useful when listening to hover, click and selection events. Note that, *scatter* traces also appends customdata items in the markers DOM elements", + "editType": "calc", + "valType": "data_array" + }, + "fill": { + "description": "Sets the area to fill with a solid color. Use with `fillcolor` if not *none*. scatterternary has a subset of the options available to scatter. *toself* connects the endpoints of the trace (or each segment of the trace if it has gaps) into a closed shape. *tonext* fills the space between two traces if one completely encloses the other (eg consecutive contour lines), and behaves like *toself* if there is no trace before it. *tonext* should not be used if one trace does not enclose the other.", + "dflt": "none", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "toself", + "tonext" + ] + }, + "fillcolor": { + "description": "Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available.", + "editType": "calc", + "valType": "color" + }, + "hoverinfo": { + "arrayOk": true, + "description": "Determines what trace information appears on hover. If `none` or `skip` are set, no information is displayed upon hovering. But, if `none` is set, click and hover events are still fired.", + "dflt": "all", + "editType": "none", + "extras": [ + "all", + "none", + "skip" + ], + "flags": [ + "a", + "b", + "c", + "text", + "name" + ], + "valType": "flaglist" + }, + "hoverlabel": { + "align": { + "arrayOk": true, + "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", + "dflt": "auto", + "editType": "none", + "valType": "enumerated", + "values": [ + "left", + "right", + "auto" + ] + }, + "bgcolor": { + "arrayOk": true, + "description": "Sets the background color of the hover labels for this trace", + "editType": "none", + "valType": "color" + }, + "bordercolor": { + "arrayOk": true, + "description": "Sets the border color of the hover labels for this trace.", + "editType": "none", + "valType": "color" + }, + "editType": "none", + "font": { + "color": { + "arrayOk": true, + "editType": "none", + "valType": "color" + }, + "description": "Sets the font used in hover labels.", + "editType": "none", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "editType": "none", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "arrayOk": true, + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "none", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "arrayOk": true, + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "none", + "valType": "string" + }, + "size": { + "arrayOk": true, + "editType": "none", + "min": 1, + "valType": "number" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "arrayOk": true, + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "none", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "none", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "namelength": { + "arrayOk": true, + "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.", + "dflt": 15, + "editType": "none", + "min": -1, + "valType": "integer" + }, + "role": "object", + "showarrow": { + "description": "Sets whether or not to show the hover label arrow/triangle pointing to the data point.", + "dflt": true, + "editType": "none", + "valType": "boolean" + } + }, + "hovertemplate": { + "arrayOk": true, + "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}\" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example \"Price: %{y:$.2f}\". https://github.com/d3/d3-format/tree/v1.4.5#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-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all 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 ``.", + "dflt": "", + "editType": "none", + "valType": "string" + }, + "hovertemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "none", + "valType": "any" + }, + "hovertext": { + "arrayOk": true, + "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 data points in (a,b,c). To be seen, trace `hoverinfo` must contain a *text* flag.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "ids": { + "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.", + "editType": "calc", + "valType": "data_array" + }, + "legend": { + "description": "Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc.", + "dflt": "legend", + "editType": "style", + "valType": "subplotid" + }, + "legendgroup": { + "description": "Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items.", + "dflt": "", + "editType": "style", + "valType": "string" + }, + "legendgrouptitle": { + "editType": "style", + "font": { + "color": { + "editType": "style", + "valType": "color" + }, + "description": "Sets this legend group's title font.", + "editType": "style", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "editType": "style", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "style", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "style", + "valType": "string" + }, + "size": { + "editType": "style", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "style", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "style", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "text": { + "description": "Sets the title of the legend group.", + "dflt": "", + "editType": "style", + "valType": "string" + } + }, + "legendrank": { + "description": "Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout.", + "dflt": 1000, + "editType": "style", + "valType": "number" + }, + "legendwidth": { + "description": "Sets the width (in px or fraction) of the legend for this trace.", + "editType": "style", + "min": 0, + "valType": "number" + }, + "line": { + "color": { + "description": "Sets the line color.", + "editType": "calc", + "valType": "color" + }, + "dash": { + "description": "Sets the style of the lines.", + "dflt": "solid", + "editType": "calc", + "valType": "enumerated", + "values": [ + "dash", + "dashdot", + "dot", + "longdash", + "longdashdot", + "solid" + ] + }, + "editType": "calc", + "role": "object", + "width": { + "description": "Sets the line width (in px).", + "dflt": 2, + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "marker": { + "angle": { + "arrayOk": true, + "description": "Sets the marker angle in respect to `angleref`.", + "dflt": 0, + "editType": "calc", + "valType": "angle" + }, + "autocolorscale": { + "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.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "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.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "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.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "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`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "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.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.cmin` and `marker.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "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.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorbar": { + "bgcolor": { + "description": "Sets the color of padded area.", + "dflt": "rgba(0,0,0,0)", + "editType": "calc", + "valType": "color" + }, + "bordercolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "borderwidth": { + "description": "Sets the width (in px) or the border enclosing this color bar.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "dtick": { + "description": "Sets the step in-between ticks on this color bar. Use with `tick0`. Must be a positive number. Note: unlike on x/y axes, the special *log* and *date* string forms (*L*, *D1*, *D2*, *M*) are not supported here: this axis is always linear, so such strings are silently ignored and the step is set to 1.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "editType": "calc", + "exponentformat": { + "description": "Determines a formatting rule for the tick exponents. For example, consider the number 1,000,000,000. If *none*, it appears as 1,000,000,000. If *e*, 1e+9. If *E*, 1E+9. If *power*, 1x10^9 (with 9 in a super script). If *SI*, 1G. If *B*, 1B. *SI* uses prefixes from \"femto\" f (10^-15) to \"tera\" T (10^12). *SI extended* covers instead the full SI range from \"quecto\" q (10^-30) to \"quetta\" Q (10^30). If *SI* or *SI extended* is used and the exponent is beyond the above ranges, the formatting rule will automatically be switched to the power notation.", + "dflt": "B", + "editType": "calc", + "valType": "enumerated", + "values": [ + "none", + "e", + "E", + "power", + "SI", + "B", + "SI extended" + ] + }, + "labelalias": { + "description": "Replacement text for specific tick or hover labels. For example using {US: 'USA', CA: 'Canada'} changes US to USA and CA to Canada. The labels we would have shown must match the keys exactly, after adding any tickprefix or ticksuffix. For negative numbers the minus sign symbol used (U+2212) is wider than the regular ascii dash. That means you need to use −1 instead of -1. labelalias can be used with any axis type, and both keys (if needed) and values (if desired) can include html-like tags or MathJax.", + "dflt": false, + "editType": "calc", + "valType": "any" + }, + "len": { + "description": "Sets the length of the color bar This measure excludes the padding of both ends. That is, the color bar length is this length minus the padding on both ends.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "lenmode": { + "description": "Determines whether this color bar's length (i.e. the measure in the color variation direction) is set in units of plot *fraction* or in *pixels. Use `len` to set the value.", + "dflt": "fraction", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "minexponent": { + "description": "Hide SI prefix for 10^n if |n| is below this number. This only has an effect when `tickformat` is *SI* or *B*.", + "dflt": 3, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "nticks": { + "description": "Specifies the maximum number of ticks for the particular axis. The actual number of ticks will be chosen automatically to be less than or equal to `nticks`. Has an effect only if `tickmode` is set to *auto*.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "integer" + }, + "orientation": { + "description": "Sets the orientation of the colorbar.", + "dflt": "v", + "editType": "calc", + "valType": "enumerated", + "values": [ + "h", + "v" + ] + }, + "outlinecolor": { + "description": "Sets the axis line color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "outlinewidth": { + "description": "Sets the width (in px) of the axis line.", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "role": "object", + "separatethousands": { + "description": "If \"true\", even 4-digit integers are separated", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "showexponent": { + "description": "If *all*, all exponents are shown besides their significands. If *first*, only the exponent of the first tick is shown. If *last*, only the exponent of the last tick is shown. If *none*, no exponents appear.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticklabels": { + "description": "Determines whether or not the tick labels are drawn.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "showtickprefix": { + "description": "If *all*, all tick labels are displayed with a prefix. If *first*, only the first tick is displayed with a prefix. If *last*, only the last tick is displayed with a suffix. If *none*, tick prefixes are hidden.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "showticksuffix": { + "description": "Same as `showtickprefix` but for tick suffixes.", + "dflt": "all", + "editType": "calc", + "valType": "enumerated", + "values": [ + "all", + "first", + "last", + "none" + ] + }, + "thickness": { + "description": "Sets the thickness of the color bar This measure excludes the size of the padding, ticks and labels.", + "dflt": 30, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "thicknessmode": { + "description": "Determines whether this color bar's thickness (i.e. the measure in the constant color direction) is set in units of plot *fraction* or in *pixels*. Use `thickness` to set the value.", + "dflt": "pixels", + "editType": "calc", + "valType": "enumerated", + "values": [ + "fraction", + "pixels" + ] + }, + "tick0": { + "description": "Sets the placement of the first tick on this axis. Use with `dtick`. If the axis `type` is *log*, then you must take the log of your starting tick (e.g. to set the starting tick to 100, set the `tick0` to 2) except when `dtick`=*L* (see `dtick` for more info). If the axis `type` is *date*, it should be a date string, like date data. If the axis `type` is *category*, it should be a number, using the scale where each category is assigned a serial number from zero in the order it appears.", + "editType": "calc", + "impliedEdits": { + "tickmode": "linear" + }, + "valType": "any" + }, + "tickangle": { + "description": "Sets the angle of the tick labels with respect to the horizontal. For example, a `tickangle` of -90 draws the tick labels vertically.", + "dflt": "auto", + "editType": "calc", + "valType": "angle" + }, + "tickcolor": { + "description": "Sets the tick color.", + "dflt": "#444", + "editType": "calc", + "valType": "color" + }, + "tickfont": { + "color": { + "editType": "calc", + "valType": "color" + }, + "description": "Sets the color bar's tick label font", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "tickformat": { + "description": "Sets the tick label formatting rule using d3 formatting mini-languages which are very similar to those in Python. For numbers, see: https://github.com/d3/d3-format/tree/v1.4.5#d3-format. And for dates see: https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format. We add two items to d3's date formatter: *%h* for half of the year as a decimal number as well as *%{n}f* for fractional seconds with n digits. For example, *2016-10-13 09:15:23.456* with tickformat *%H~%M~%S.%2f* would display *09~15~23.46*", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "tickformatstops": { + "items": { + "tickformatstop": { + "dtickrange": { + "description": "range [*min*, *max*], where *min*, *max* - dtick values which describe some zoom level, it is possible to omit *min* or *max* value by passing *null*", + "editType": "calc", + "items": [ + { + "editType": "calc", + "valType": "any" + }, + { + "editType": "calc", + "valType": "any" + } + ], + "valType": "info_array" + }, + "editType": "calc", + "enabled": { + "description": "Determines whether or not this stop is used. If `false`, this stop is ignored even within its `dtickrange`.", + "dflt": true, + "editType": "calc", + "valType": "boolean" + }, + "name": { + "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.", + "editType": "calc", + "valType": "string" + }, + "role": "object", + "templateitemname": { + "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", + "valType": "string" + }, + "value": { + "description": "string - dtickformat for described zoom level, the same as *tickformat*", + "dflt": "", + "editType": "calc", + "valType": "string" + } + } + }, + "role": "object" + }, + "ticklabeloverflow": { + "description": "Determines how we handle tick labels that would overflow either the graph div or the domain of the axis. The default value for inside tick labels is *hide past domain*. In other cases the default is *hide past div*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "allow", + "hide past div", + "hide past domain" + ] + }, + "ticklabelposition": { + "description": "Determines where tick labels are drawn relative to the ticks. Left and right options are used when `orientation` is *h*, top and bottom when `orientation` is *v*.", + "dflt": "outside", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "outside top", + "inside top", + "outside left", + "inside left", + "outside right", + "inside right", + "outside bottom", + "inside bottom" + ] + }, + "ticklabelstep": { + "description": "Sets the spacing between tick labels as compared to the spacing between ticks. A value of 1 (default) means each tick gets a label. A value of 2 means shows every 2nd label. A larger value n means only every nth tick is labeled. `tick0` determines which labels are shown. Not implemented for axes with `type` *log* or *multicategory*, or when `tickmode` is *array*.", + "dflt": 1, + "editType": "calc", + "min": 1, + "valType": "integer" + }, + "ticklen": { + "description": "Sets the tick length (in px).", + "dflt": 5, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "tickmode": { + "description": "Sets the tick mode for this axis. If *auto*, the number of ticks is set via `nticks`. If *linear*, the placement of the ticks is determined by a starting position `tick0` and a tick step `dtick` (*linear* is the default value if `tick0` and `dtick` are provided). If *array*, the placement of the ticks is set via `tickvals` and the tick text is `ticktext`. (*array* is the default value if `tickvals` is provided).", + "editType": "calc", + "impliedEdits": {}, + "valType": "enumerated", + "values": [ + "auto", + "linear", + "array" + ] + }, + "tickprefix": { + "description": "Sets a tick label prefix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticks": { + "description": "Determines whether ticks are drawn or not. If **, this axis' ticks are not drawn. If *outside* (*inside*), this axis' are drawn outside (inside) the axis lines.", + "dflt": "", + "editType": "calc", + "valType": "enumerated", + "values": [ + "outside", + "inside", + "" + ] + }, + "ticksuffix": { + "description": "Sets a tick label suffix.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "ticktext": { + "description": "Sets the text displayed at the ticks position via `tickvals`. Only has an effect if `tickmode` is set to *array*. Used with `tickvals`.", + "editType": "calc", + "valType": "data_array" + }, + "tickvals": { + "description": "Sets the values at which ticks on this axis appear. Only has an effect if `tickmode` is set to *array*. Used with `ticktext`.", + "editType": "calc", + "valType": "data_array" + }, + "tickwidth": { + "description": "Sets the tick width (in px).", + "dflt": 1, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "title": { + "editType": "calc", + "font": { + "color": { + "editType": "calc", + "valType": "color" + }, + "description": "Sets this color bar's title font.", + "editType": "calc", + "family": { + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "lineposition": { + "description": "Sets the kind of decoration line(s) with text, such as an *under*, *over* or *through* as well as combinations e.g. *under+over*, etc.", + "dflt": "none", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "under", + "over", + "through" + ], + "valType": "flaglist" + }, + "role": "object", + "shadow": { + "description": "Sets the shape and color of the shadow behind text. *auto* places minimal shadow and applies contrast text font color. See https://developer.mozilla.org/en-US/docs/Web/CSS/text-shadow for additional options.", + "dflt": "none", + "editType": "calc", + "valType": "string" + }, + "size": { + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "textcase": { + "description": "Sets capitalization of text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "word caps", + "upper", + "lower" + ] + }, + "variant": { + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps", + "all-small-caps", + "all-petite-caps", + "petite-caps", + "unicase" + ] + }, + "weight": { + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "extras": [ + "normal", + "bold" + ], + "max": 1000, + "min": 1, + "valType": "integer" + } + }, + "role": "object", + "side": { + "description": "Determines the location of color bar's title with respect to the color bar. Defaults to *top* when `orientation` is *v* and defaults to *right* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "right", + "top", + "bottom" + ] + }, + "text": { + "description": "Sets the title of the color bar.", + "editType": "calc", + "valType": "string" + } + }, + "x": { + "description": "Sets the x position with respect to `xref` of the color bar (in plot fraction). When `xref` is *paper*, defaults to 1.02 when `orientation` is *v* and 0.5 when `orientation` is *h*. When `xref` is *container*, defaults to *1* when `orientation` is *v* and 0.5 when `orientation` is *h*. Must be between *0* and *1* if `xref` is *container* and between *-2* and *3* if `xref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "xanchor": { + "description": "Sets this color bar's horizontal position anchor. This anchor binds the `x` position to the *left*, *center* or *right* of the color bar. Defaults to *left* when `orientation` is *v* and *center* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "left", + "center", + "right" + ] + }, + "xpad": { + "description": "Sets the amount of padding (in px) along the x direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "xref": { + "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.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + }, + "y": { + "description": "Sets the y position with respect to `yref` of the color bar (in plot fraction). When `yref` is *paper*, defaults to 0.5 when `orientation` is *v* and 1.02 when `orientation` is *h*. When `yref` is *container*, defaults to 0.5 when `orientation` is *v* and 1 when `orientation` is *h*. Must be between *0* and *1* if `yref` is *container* and between *-2* and *3* if `yref` is *paper*.", + "editType": "calc", + "valType": "number" + }, + "yanchor": { + "description": "Sets this color bar's vertical position anchor This anchor binds the `y` position to the *top*, *middle* or *bottom* of the color bar. Defaults to *middle* when `orientation` is *v* and *bottom* when `orientation` is *h*.", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top", + "middle", + "bottom" + ] + }, + "ypad": { + "description": "Sets the amount of padding (in px) along the y direction.", + "dflt": 10, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "yref": { + "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.", + "dflt": "paper", + "editType": "calc", + "valType": "enumerated", + "values": [ + "container", + "paper" + ] + } + }, + "colorscale": { + "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, hsla, hwb, 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: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "editType": "calc", + "line": { + "autocolorscale": { + "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.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cauto": { + "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.", + "dflt": true, + "editType": "calc", + "impliedEdits": {}, + "valType": "boolean" + }, + "cmax": { + "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.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "cmid": { + "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`.", + "dflt": null, + "editType": "calc", + "impliedEdits": {}, + "valType": "number" + }, + "cmin": { + "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.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "cauto": false + }, + "valType": "number" + }, + "color": { + "arrayOk": true, + "description": "Sets the marker.line color. It accepts either a specific color or an array of numbers that are mapped to the colorscale relative to the max and min values of the array or relative to `marker.line.cmin` and `marker.line.cmax` if set.", + "editType": "calc", + "valType": "color" + }, + "coloraxis": { + "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.", + "dflt": null, + "editType": "calc", + "regex": "/^coloraxis([2-9]|[1-9][0-9]+)?$/", + "valType": "subplotid" + }, + "colorscale": { + "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, hsla, hwb, 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: Blackbody,Bluered,Blues,Cividis,Earth,Electric,Greens,Greys,Hot,Jet,Picnic,Portland,Rainbow,RdBu,Reds,Viridis,YlGnBu,YlOrRd.", + "dflt": null, + "editType": "calc", + "impliedEdits": { + "autocolorscale": false + }, + "valType": "colorscale" + }, + "editType": "calc", + "reversescale": { + "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.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "width": { + "arrayOk": true, + "description": "Sets the width (in px) of the lines bounding the marker points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "opacity": { + "arrayOk": true, + "description": "Sets the marker opacity.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "reversescale": { + "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.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "role": "object", + "showscale": { + "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.", + "dflt": false, + "editType": "calc", + "valType": "boolean" + }, + "size": { + "arrayOk": true, + "description": "Sets the marker size (in px).", + "dflt": 6, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemin": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the minimum size (in px) of the rendered marker points.", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "sizemode": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the rule for which the data in `size` is converted to pixels.", + "dflt": "diameter", + "editType": "calc", + "valType": "enumerated", + "values": [ + "diameter", + "area" + ] + }, + "sizeref": { + "description": "Has an effect only if `marker.size` is set to a numerical array. Sets the scale factor used to determine the rendered size of marker points. Use with `sizemin` and `sizemode`.", + "dflt": 1, + "editType": "calc", + "valType": "number" + }, + "symbol": { + "arrayOk": true, + "description": "Sets the marker symbol type. Adding 100 is equivalent to appending *-open* to a symbol name. Adding 200 is equivalent to appending *-dot* to a symbol name. Adding 300 is equivalent to appending *-open-dot* or *dot-open* to a symbol name.", + "dflt": "circle", + "editType": "calc", + "valType": "enumerated", + "values": [ + 0, + "0", + "circle", + 100, + "100", + "circle-open", + 200, + "200", + "circle-dot", + 300, + "300", + "circle-open-dot", + 1, + "1", + "square", + 101, + "101", + "square-open", + 201, + "201", + "square-dot", + 301, + "301", + "square-open-dot", + 2, + "2", + "diamond", + 102, + "102", + "diamond-open", + 202, + "202", + "diamond-dot", + 302, + "302", + "diamond-open-dot", + 3, + "3", + "cross", + 103, + "103", + "cross-open", + 203, + "203", + "cross-dot", + 303, + "303", + "cross-open-dot", + 4, + "4", + "x", + 104, + "104", + "x-open", + 204, + "204", + "x-dot", + 304, + "304", + "x-open-dot", + 5, + "5", + "triangle-up", + 105, + "105", + "triangle-up-open", + 205, + "205", + "triangle-up-dot", + 305, + "305", + "triangle-up-open-dot", + 6, + "6", + "triangle-down", + 106, + "106", + "triangle-down-open", + 206, + "206", + "triangle-down-dot", + 306, + "306", + "triangle-down-open-dot", + 7, + "7", + "triangle-left", + 107, + "107", + "triangle-left-open", + 207, + "207", + "triangle-left-dot", + 307, + "307", + "triangle-left-open-dot", + 8, + "8", + "triangle-right", + 108, + "108", + "triangle-right-open", + 208, + "208", + "triangle-right-dot", + 308, + "308", + "triangle-right-open-dot", + 9, + "9", + "triangle-ne", + 109, + "109", + "triangle-ne-open", + 209, + "209", + "triangle-ne-dot", + 309, + "309", + "triangle-ne-open-dot", + 10, + "10", + "triangle-se", + 110, + "110", + "triangle-se-open", + 210, + "210", + "triangle-se-dot", + 310, + "310", + "triangle-se-open-dot", + 11, + "11", + "triangle-sw", + 111, + "111", + "triangle-sw-open", + 211, + "211", + "triangle-sw-dot", + 311, + "311", + "triangle-sw-open-dot", + 12, + "12", + "triangle-nw", + 112, + "112", + "triangle-nw-open", + 212, + "212", + "triangle-nw-dot", + 312, + "312", + "triangle-nw-open-dot", + 13, + "13", + "pentagon", + 113, + "113", + "pentagon-open", + 213, + "213", + "pentagon-dot", + 313, + "313", + "pentagon-open-dot", + 14, + "14", + "hexagon", + 114, + "114", + "hexagon-open", + 214, + "214", + "hexagon-dot", + 314, + "314", + "hexagon-open-dot", + 15, + "15", + "hexagon2", + 115, + "115", + "hexagon2-open", + 215, + "215", + "hexagon2-dot", + 315, + "315", + "hexagon2-open-dot", + 16, + "16", + "octagon", + 116, + "116", + "octagon-open", + 216, + "216", + "octagon-dot", + 316, + "316", + "octagon-open-dot", + 17, + "17", + "star", + 117, + "117", + "star-open", + 217, + "217", + "star-dot", + 317, + "317", + "star-open-dot", + 18, + "18", + "hexagram", + 118, + "118", + "hexagram-open", + 218, + "218", + "hexagram-dot", + 318, + "318", + "hexagram-open-dot", + 19, + "19", + "star-triangle-up", + 119, + "119", + "star-triangle-up-open", + 219, + "219", + "star-triangle-up-dot", + 319, + "319", + "star-triangle-up-open-dot", + 20, + "20", + "star-triangle-down", + 120, + "120", + "star-triangle-down-open", + 220, + "220", + "star-triangle-down-dot", + 320, + "320", + "star-triangle-down-open-dot", + 21, + "21", + "star-square", + 121, + "121", + "star-square-open", + 221, + "221", + "star-square-dot", + 321, + "321", + "star-square-open-dot", + 22, + "22", + "star-diamond", + 122, + "122", + "star-diamond-open", + 222, + "222", + "star-diamond-dot", + 322, + "322", + "star-diamond-open-dot", + 23, + "23", + "diamond-tall", + 123, + "123", + "diamond-tall-open", + 223, + "223", + "diamond-tall-dot", + 323, + "323", + "diamond-tall-open-dot", + 24, + "24", + "diamond-wide", + 124, + "124", + "diamond-wide-open", + 224, + "224", + "diamond-wide-dot", + 324, + "324", + "diamond-wide-open-dot", + 25, + "25", + "hourglass", + 125, + "125", + "hourglass-open", + 26, + "26", + "bowtie", + 126, + "126", + "bowtie-open", + 27, + "27", + "circle-cross", + 127, + "127", + "circle-cross-open", + 28, + "28", + "circle-x", + 128, + "128", + "circle-x-open", + 29, + "29", + "square-cross", + 129, + "129", + "square-cross-open", + 30, + "30", + "square-x", + 130, + "130", + "square-x-open", + 31, + "31", + "diamond-cross", + 131, + "131", + "diamond-cross-open", + 32, + "32", + "diamond-x", + 132, + "132", + "diamond-x-open", + 33, + "33", + "cross-thin", + 133, + "133", + "cross-thin-open", + 34, + "34", + "x-thin", + 134, + "134", + "x-thin-open", + 35, + "35", + "asterisk", + 135, + "135", + "asterisk-open", + 36, + "36", + "hash", + 136, + "136", + "hash-open", + 236, + "236", + "hash-dot", + 336, + "336", + "hash-open-dot", + 37, + "37", + "y-up", + 137, + "137", + "y-up-open", + 38, + "38", + "y-down", + 138, + "138", + "y-down-open", + 39, + "39", + "y-left", + 139, + "139", + "y-left-open", + 40, + "40", + "y-right", + 140, + "140", + "y-right-open", + 41, + "41", + "line-ew", + 141, + "141", + "line-ew-open", + 42, + "42", + "line-ns", + 142, + "142", + "line-ns-open", + 43, + "43", + "line-ne", + 143, + "143", + "line-ne-open", + 44, + "44", + "line-nw", + 144, + "144", + "line-nw-open", + 45, + "45", + "arrow-up", + 145, + "145", + "arrow-up-open", + 46, + "46", + "arrow-down", + 146, + "146", + "arrow-down-open", + 47, + "47", + "arrow-left", + 147, + "147", + "arrow-left-open", + 48, + "48", + "arrow-right", + 148, + "148", + "arrow-right-open", + 49, + "49", + "arrow-bar-up", + 149, + "149", + "arrow-bar-up-open", + 50, + "50", + "arrow-bar-down", + 150, + "150", + "arrow-bar-down-open", + 51, + "51", + "arrow-bar-left", + 151, + "151", + "arrow-bar-left-open", + 52, + "52", + "arrow-bar-right", + 152, + "152", + "arrow-bar-right-open", + 53, + "53", + "arrow", + 153, + "153", + "arrow-open", + 54, + "54", + "arrow-wide", + 154, + "154", + "arrow-wide-open" + ] + } + }, + "meta": { + "arrayOk": true, + "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.", + "editType": "plot", + "valType": "any" + }, + "mode": { + "description": "Determines the drawing mode for this scatter trace. If the provided `mode` includes *text* then the `text` elements appear at the coordinates. Otherwise, the `text` elements appear on hover. If there are less than 20 points and the trace is not stacked then the default is *lines+markers*. Otherwise, *lines*.", + "dflt": "markers", + "editType": "calc", + "extras": [ + "none" + ], + "flags": [ + "lines", + "markers", + "text" + ], + "valType": "flaglist" + }, + "name": { + "description": "Sets the trace name. The trace name appears as the legend item and on hover.", + "editType": "style", + "valType": "string" + }, + "opacity": { + "description": "Sets the opacity of the trace.", + "dflt": 1, + "editType": "style", + "max": 1, + "min": 0, + "valType": "number" + }, + "selected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of selected points.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of selected points.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of selected points.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, + "selectedpoints": { + "description": "Array containing integer indices of selected points. Has an effect only for traces that support selections. Note that an empty array means an empty selection where the `unselected` are turned on for all points, whereas, any other non-array values means no selection all where the `selected` and `unselected` styles have no effect.", + "editType": "calc", + "valType": "any" + }, + "showlegend": { + "description": "Determines whether or not an item corresponding to this trace is shown in the legend.", + "dflt": true, + "editType": "style", + "valType": "boolean" + }, + "subplot": { + "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.", + "dflt": "ternary", + "editType": "calc", + "valType": "subplotid" + }, + "sum": { + "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", + "dflt": 0, + "editType": "calc", + "min": 0, + "valType": "number" + }, + "text": { + "arrayOk": true, + "description": "Sets text elements associated with each (a,b,c) point. If a single string, the same string appears over all the data points. If an array of strings, the items are mapped in order to the 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.", + "dflt": "", + "editType": "calc", + "valType": "string" + }, + "textfont": { + "color": { + "arrayOk": true, + "editType": "calc", + "valType": "color" + }, + "description": "Sets the text font.", + "editType": "calc", + "family": { + "arrayOk": true, + "description": "HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available.", + "editType": "calc", + "noBlank": true, + "strict": true, + "valType": "string" + }, + "role": "object", + "size": { + "arrayOk": true, + "editType": "calc", + "min": 1, + "valType": "number" + }, + "style": { + "arrayOk": true, + "description": "Sets whether a font should be styled with a normal or italic face from its family.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "italic" + ] + }, + "variant": { + "arrayOk": true, + "description": "Sets the variant of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "small-caps" + ] + }, + "weight": { + "arrayOk": true, + "description": "Sets the weight (or boldness) of the font.", + "dflt": "normal", + "editType": "calc", + "valType": "enumerated", + "values": [ + "normal", + "bold" + ] + } + }, + "textposition": { + "arrayOk": true, + "description": "Sets the positions of the `text` elements with respects to the (x,y) coordinates.", + "dflt": "middle center", + "editType": "calc", + "valType": "enumerated", + "values": [ + "top left", + "top center", + "top right", + "middle left", + "middle center", + "middle right", + "bottom left", + "bottom center", + "bottom right" + ] + }, + "texttemplate": { + "arrayOk": true, + "description": "Template string used for rendering the information text that appears 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-format/tree/v1.4.5#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-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of \"data: %{x}, %{y}\" will result in a value of \"data: 1, %{y}\" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `a`, `b`, `c` and `text`.", + "dflt": "", + "editType": "plot", + "valType": "string" + }, + "texttemplatefallback": { + "description": "Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed.", + "dflt": "-", + "editType": "plot", + "valType": "any" + }, + "type": "scatterternarygl", + "uid": { + "description": "Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions.", + "editType": "plot", + "valType": "string" + }, + "uirevision": { + "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.", + "editType": "none", + "valType": "any" + }, + "unselected": { + "editType": "calc", + "marker": { + "color": { + "description": "Sets the marker color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "opacity": { + "description": "Sets the marker opacity of unselected points, applied only when a selection exists.", + "editType": "calc", + "max": 1, + "min": 0, + "valType": "number" + }, + "role": "object", + "size": { + "description": "Sets the marker size of unselected points, applied only when a selection exists.", + "editType": "calc", + "min": 0, + "valType": "number" + } + }, + "role": "object", + "textfont": { + "color": { + "description": "Sets the text font color of unselected points, applied only when a selection exists.", + "editType": "calc", + "valType": "color" + }, + "editType": "calc", + "role": "object" + } + }, + "visible": { + "description": "Determines whether or not this trace is visible. If *legendonly*, the trace is not drawn, but can appear as a legend item (provided that the legend itself is visible).", + "dflt": true, + "editType": "calc", + "valType": "enumerated", + "values": [ + true, + false, + "legendonly" + ] + } + }, + "categories": [ + "gl", + "regl", + "ternary", + "symbols", + "showLegend", + "scatter-like" + ], + "meta": { + "description": "Provides similar functionality to the *scatter* type but on a ternary phase diagram using the WebGL plotting engine. The data is provided by at least two arrays out of `a`, `b`, `c` triplets.", + "hrName": "scatter_ternary_gl" + }, + "type": "scatterternarygl" + }, "splom": { "animatable": false, "attributes": { From 1ca9529c965920e7d71766bf9163b2417e9c392d Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sat, 26 Sep 2026 01:18:02 +0200 Subject: [PATCH 2/8] add draftlog --- draftlogs/8083_add.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 draftlogs/8083_add.md diff --git a/draftlogs/8083_add.md b/draftlogs/8083_add.md new file mode 100644 index 00000000000..8ca957563fa --- /dev/null +++ b/draftlogs/8083_add.md @@ -0,0 +1 @@ + - Add the `scatterternarygl` trace for ternary plots with WebGL [[#8083](https://github.com/plotly/plotly.js/pull/8083] \ No newline at end of file From 1d66cc2a9ef0d43873c4fb77bfbfbbb3e7ddf15a Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sat, 26 Sep 2026 01:30:10 +0200 Subject: [PATCH 3/8] npm run schema --- src/types/generated/schema.d.ts | 193 +++++++++++++++++++++++++++++++- 1 file changed, 192 insertions(+), 1 deletion(-) diff --git a/src/types/generated/schema.d.ts b/src/types/generated/schema.d.ts index 5283911ff43..14930dd32d3 100644 --- a/src/types/generated/schema.d.ts +++ b/src/types/generated/schema.d.ts @@ -34,7 +34,7 @@ export type TransitionEasing = 'linear' | 'quad' | 'cubic' | 'sin' | 'exp' | 'ci export type ToImageFormat = 'png' | 'jpeg' | 'webp' | 'svg' | 'full-json'; -export type TraceType = 'bar' | 'barpolar' | 'box' | 'candlestick' | 'carpet' | 'choropleth' | 'choroplethmap' | 'cone' | 'contour' | 'contourcarpet' | 'densitymap' | 'funnel' | 'funnelarea' | 'heatmap' | 'histogram' | 'histogram2d' | 'histogram2dcontour' | 'icicle' | 'image' | 'indicator' | 'isosurface' | 'mesh3d' | 'ohlc' | 'parcats' | 'parcoords' | 'pie' | 'quiver' | 'sankey' | 'scatter' | 'scatter3d' | 'scattercarpet' | 'scattergeo' | 'scattergl' | 'scattermap' | 'scatterpolar' | 'scatterpolargl' | 'scattersmith' | 'scatterternary' | 'splom' | 'streamtube' | 'sunburst' | 'surface' | 'table' | 'treemap' | 'violin' | 'volume' | 'waterfall'; +export type TraceType = 'bar' | 'barpolar' | 'box' | 'candlestick' | 'carpet' | 'choropleth' | 'choroplethmap' | 'cone' | 'contour' | 'contourcarpet' | 'densitymap' | 'funnel' | 'funnelarea' | 'heatmap' | 'histogram' | 'histogram2d' | 'histogram2dcontour' | 'icicle' | 'image' | 'indicator' | 'isosurface' | 'mesh3d' | 'ohlc' | 'parcats' | 'parcoords' | 'pie' | 'quiver' | 'sankey' | 'scatter' | 'scatter3d' | 'scattercarpet' | 'scattergeo' | 'scattergl' | 'scattermap' | 'scatterpolar' | 'scatterpolargl' | 'scattersmith' | 'scatterternary' | 'scatterternarygl' | 'splom' | 'streamtube' | 'sunburst' | 'surface' | 'table' | 'treemap' | 'violin' | 'volume' | 'waterfall'; /** @deprecated Renamed to TraceType. */ export type PlotType = TraceType; @@ -9724,6 +9724,196 @@ export interface ScatterternaryData { visible?: true | false | 'legendonly'; } +export interface ScatterternaryglData { + /** 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`. */ + a?: Datum[] | Datum[][] | TypedArray; + /** 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`. */ + b?: Datum[] | Datum[][] | TypedArray; + /** 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`. */ + c?: Datum[] | Datum[][] | TypedArray; + /** + * Determines whether or not gaps (i.e. {nan} or missing values) in the provided data arrays are connected. + * @default false + */ + connectgaps?: boolean; + /** 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 */ + customdata?: Datum[] | Datum[][] | TypedArray; + /** + * 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. + * @default 'none' + */ + fill?: 'none' | 'toself' | 'tonext'; + /** Sets the fill color. Defaults to a half-transparent variant of the line color, marker color, or marker line color, whichever is available. */ + fillcolor?: Color; + /** + * Determines what trace information appears 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. + * @default 'all' + */ + hoverinfo?: 'a' | 'b' | 'c' | 'text' | 'name' | 'all' | 'none' | 'skip' | (string & {}) | ('a' | 'b' | 'c' | 'text' | 'name' | 'all' | 'none' | 'skip' | (string & {}))[]; + hoverlabel?: HoverLabel; + /** 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}" as well as %{xother}, {%_xother}, {%_xother_}, {%xother_}. When showing info for several points, *xother* will be added to those with different x positions from the first point. An underscore before or after *(x|y)other* will add a space on that side, only when this field is shown. Numbers are formatted using d3-format's syntax %{variable:d3-format}, for example "Price: %{y:$.2f}". https://github.com/d3/d3-format/tree/v1.4.5#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-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. The variables available in `hovertemplate` are the ones emitted as event data described at this link https://plotly.com/javascript/plotlyjs-events/#event-data. Additionally, all 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 ``. */ + hovertemplate?: string | string[]; + /** + * Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed. + * @default '-' + */ + hovertemplatefallback?: any; + /** 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 data points in (a,b,c). To be seen, trace `hoverinfo` must contain a *text* flag. */ + hovertext?: string | string[]; + /** 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. */ + ids?: Datum[] | Datum[][] | TypedArray; + /** + * Sets the reference to a legend to show this trace in. References to these legends are *legend*, *legend2*, *legend3*, etc. Settings for these legends are set in the layout, under `layout.legend`, `layout.legend2`, etc. + * @default 'legend' + */ + legend?: string; + /** Sets the legend group for this trace. Traces and shapes part of the same legend group hide/show at the same time when toggling legend items. */ + legendgroup?: string; + legendgrouptitle?: LegendGroupTitle; + /** + * Sets the legend rank for this trace. Items and groups with smaller ranks are presented on top/left side while with *reversed* `legend.traceorder` they are on bottom/right side. The default legendrank is 1000, so that you can use ranks less than 1000 to place certain items before all unranked items, and ranks greater than 1000 to go after all unranked items. When having unranked or equal rank items shapes would be displayed after traces i.e. according to their order in data and layout. + * @default 1000 + */ + legendrank?: number; + /** + * Sets the width (in px or fraction) of the legend for this trace. + * Minimum: 0 + */ + legendwidth?: number; + line?: { + /** Sets the line color. */ + color?: Color; + /** + * Sets the style of the lines. + * @default 'solid' + */ + dash?: Dash; + /** + * Sets the line width (in px). + * @default 2 + * Minimum: 0 + */ + width?: number; + }; + marker?: _internal.Marker; + /** Assigns extra meta information associated with this trace that can be used in various text attributes. Attributes such as trace `name`, graph, axis and colorbar `title.text`, annotation `text` `rangeselector`, `updatemenues` and `sliders` `label` text all support `meta`. To access the trace `meta` values in an attribute in the same trace, simply use `%{meta[i]}` where `i` is the index or key of the `meta` item in question. To access trace `meta` in layout attributes, use `%{data[n[.meta[i]}` where `i` is the index or key of the `meta` and `n` is the trace index. */ + meta?: any; + /** + * 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*. + * @default 'markers' + */ + mode?: 'lines' | 'markers' | 'text' | 'none' | (string & {}); + /** Sets the trace name. The trace name appears as the legend item and on hover. */ + name?: string; + /** + * Sets the opacity of the trace. + * @default 1 + * Range: [0, 1] + */ + opacity?: number; + selected?: { + marker?: { + /** Sets the marker color of selected points. */ + color?: Color; + /** + * Sets the marker opacity of selected points. + * Range: [0, 1] + */ + opacity?: number; + /** + * Sets the marker size of selected points. + * Minimum: 0 + */ + size?: number; + }; + textfont?: Font; + }; + /** 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. */ + selectedpoints?: any; + /** + * Determines whether or not an item corresponding to this trace is shown in the legend. + * @default true + */ + showlegend?: boolean; + /** + * 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. + * @default 'ternary' + */ + subplot?: string; + /** + * 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 + * @default 0 + * Minimum: 0 + */ + sum?: number; + /** 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 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. */ + text?: string | string[]; + /** Sets the text font. */ + textfont?: { + color?: Color | Color[]; + /** HTML font family - the typeface that will be applied by the web browser. The web browser can only apply a font if it is available on the system where it runs. Provide multiple font families, separated by commas, to indicate the order in which to apply fonts if they aren't available. */ + family?: string | string[]; + /** + * Minimum: 1 + */ + size?: number | number[]; + /** + * Sets whether a font should be styled with a normal or italic face from its family. + * @default 'normal' + */ + style?: 'normal' | 'italic' | ('normal' | 'italic')[]; + /** + * Sets the variant of the font. + * @default 'normal' + */ + variant?: 'normal' | 'small-caps' | ('normal' | 'small-caps')[]; + /** + * Sets the weight (or boldness) of the font. + * @default 'normal' + */ + weight?: 'normal' | 'bold' | ('normal' | 'bold')[]; + }; + /** + * Sets the positions of the `text` elements with respects to the (x,y) coordinates. + * @default 'middle center' + */ + textposition?: 'top left' | 'top center' | 'top right' | 'middle left' | 'middle center' | 'middle right' | 'bottom left' | 'bottom center' | 'bottom right' | ('top left' | 'top center' | 'top right' | 'middle left' | 'middle center' | 'middle right' | 'bottom left' | 'bottom center' | 'bottom right')[]; + /** Template string used for rendering the information text that appears 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-format/tree/v1.4.5#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-time-format/tree/v2.2.3#locale_format for details on the date formatting syntax. Variables that can't be found will be replaced with the specifier. For example, a template of "data: %{x}, %{y}" will result in a value of "data: 1, %{y}" if x is 1 and y is missing. Variables with an undefined value will be replaced with the fallback value. All attributes that can be specified per-point (the ones that are `arrayOk: true`) are available. Finally, the template string has access to variables `a`, `b`, `c` and `text`. */ + texttemplate?: string | string[]; + /** + * Fallback string that's displayed when a variable referenced in a template is missing. If the boolean value 'false' is passed in, the specifier with the missing variable will be displayed. + * @default '-' + */ + texttemplatefallback?: any; + type?: 'scatterternarygl'; + /** Assign an id to this trace, Use this to provide object constancy between traces during animations and transitions. */ + uid?: string; + /** Controls persistence of some user-driven changes to the trace: `constraintrange` in `parcoords` traces, as well as some `editable: true` modifications such as `name` and `colorbar.title`. Defaults to `layout.uirevision`. Note that other user-driven trace attribute changes are controlled by `layout` attributes: `trace.visible` is controlled by `layout.legend.uirevision`, `selectedpoints` is controlled by `layout.selectionrevision`, and `colorbar.(x|y)` (accessible with `config: {editable: true}`) is controlled by `layout.editrevision`. Trace changes are tracked by `uid`, which only falls back on trace index if no `uid` is provided. So if your app can add/remove traces before the end of the `data` array, such that the same trace has a different index, you can still preserve user-driven changes if you give each trace a `uid` that stays with it as it moves. */ + uirevision?: any; + unselected?: { + marker?: { + /** Sets the marker color of unselected points, applied only when a selection exists. */ + color?: Color; + /** + * Sets the marker opacity of unselected points, applied only when a selection exists. + * Range: [0, 1] + */ + opacity?: number; + /** + * Sets the marker size of unselected points, applied only when a selection exists. + * Minimum: 0 + */ + size?: number; + }; + textfont?: Font; + }; + /** + * 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). + * @default true + */ + visible?: true | false | 'legendonly'; +} + export interface SplomData { /** 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 */ customdata?: Datum[] | Datum[][] | TypedArray; @@ -11838,6 +12028,7 @@ export type Data = | Partial | Partial | Partial + | Partial | Partial | Partial | Partial From 1c629dca3a75c00cff962408b265d8590e5ed526 Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sat, 26 Sep 2026 01:44:14 +0200 Subject: [PATCH 4/8] add newline to strict.js --- src/traces/scatterternarygl/strict.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/traces/scatterternarygl/strict.js b/src/traces/scatterternarygl/strict.js index ac040f94704..edea996117e 100644 --- a/src/traces/scatterternarygl/strict.js +++ b/src/traces/scatterternarygl/strict.js @@ -4,4 +4,4 @@ var index = require('./base_index'); index.plot = require('./plot_strict'); -module.exports = index; \ No newline at end of file +module.exports = index; From 5776b603e330d32e8f568a69ff1a07a9e055427e Mon Sep 17 00:00:00 2001 From: Ya-Fan Chen <20377719+Lexachoc@users.noreply.github.com> Date: Sat, 26 Sep 2026 01:47:25 +0200 Subject: [PATCH 5/8] Fix typo in 8083_add.md --- draftlogs/8083_add.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/draftlogs/8083_add.md b/draftlogs/8083_add.md index 8ca957563fa..ff08f3dac64 100644 --- a/draftlogs/8083_add.md +++ b/draftlogs/8083_add.md @@ -1 +1 @@ - - Add the `scatterternarygl` trace for ternary plots with WebGL [[#8083](https://github.com/plotly/plotly.js/pull/8083] \ No newline at end of file + - Add the `scatterternarygl` trace for ternary plots with WebGL [[#8083](https://github.com/plotly/plotly.js/pull/8083)] From c6f6f1879b2b9f20fd9c329281a05cacc19ee1c1 Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sat, 26 Sep 2026 02:22:14 +0200 Subject: [PATCH 6/8] add baselines --- .../baselines/scatterternarygl_clipping.png | Bin 0 -> 42441 bytes test/image/baselines/scatterternarygl_fills.png | Bin 0 -> 39920 bytes test/image/baselines/scatterternarygl_lines.png | Bin 0 -> 36045 bytes .../baselines/scatterternarygl_markers.png | Bin 0 -> 39168 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 test/image/baselines/scatterternarygl_clipping.png create mode 100644 test/image/baselines/scatterternarygl_fills.png create mode 100644 test/image/baselines/scatterternarygl_lines.png create mode 100644 test/image/baselines/scatterternarygl_markers.png diff --git a/test/image/baselines/scatterternarygl_clipping.png b/test/image/baselines/scatterternarygl_clipping.png new file mode 100644 index 0000000000000000000000000000000000000000..8c9b967c0d091f4e25c2eed80abe79a1fc434765 GIT binary patch literal 42441 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 L`Fh-Q56}J|9+Utu literal 0 HcmV?d00001 diff --git a/test/image/baselines/scatterternarygl_lines.png b/test/image/baselines/scatterternarygl_lines.png new file mode 100644 index 0000000000000000000000000000000000000000..c7d90a10c1b5928500429a9c62a8cc09e31a8865 GIT binary patch literal 36045 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%0Dy^=O&@@8$SBUS6E2=U`ADSqSxJ5n=JePU&8VEt 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

sK@Zy?aPR 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 P9Rd|ab%ny)CISBg{9_<7 literal 0 HcmV?d00001 diff --git a/test/image/baselines/scatterternarygl_markers.png b/test/image/baselines/scatterternarygl_markers.png new file mode 100644 index 0000000000000000000000000000000000000000..889ad49ab07ca411488589a93bcf22e25d074e89 GIT binary patch literal 39168 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 literal 0 HcmV?d00001 From d1473c79f817cfe4b65367c257a9586becd76c42 Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sun, 27 Sep 2026 23:26:09 +0200 Subject: [PATCH 7/8] update generated types --- .../generated/entry_points/index-strict.d.ts | 4 ++-- .../entry_points/scatterternarygl.d.ts | 19 +++++++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 src/types/generated/entry_points/scatterternarygl.d.ts diff --git a/src/types/generated/entry_points/index-strict.d.ts b/src/types/generated/entry_points/index-strict.d.ts index 570cc647ccb..df61024786e 100644 --- a/src/types/generated/entry_points/index-strict.d.ts +++ b/src/types/generated/entry_points/index-strict.d.ts @@ -6,8 +6,8 @@ /** * Type surface of `plotly.js/lib/index-strict`. * - * It pre-registers the 46 trace modules of the strict bundle: - * bar, barpolar, box, candlestick, carpet, choropleth, choroplethmap, cone, contour, contourcarpet, densitymap, funnel, funnelarea, heatmap, histogram, histogram2d, histogram2dcontour, icicle, image, indicator, isosurface, mesh3d, ohlc, parcats, parcoords, pie, sankey, scatter, scattergl, scatter3d, scattercarpet, scattergeo, scattermap, scatterpolar, scatterpolargl, scattersmith, scatterternary, splom, streamtube, sunburst, surface, table, treemap, violin, volume, waterfall. + * It pre-registers the 47 trace modules of the strict bundle: + * bar, barpolar, box, candlestick, carpet, choropleth, choroplethmap, cone, contour, contourcarpet, densitymap, funnel, funnelarea, heatmap, histogram, histogram2d, histogram2dcontour, icicle, image, indicator, isosurface, mesh3d, ohlc, parcats, parcoords, pie, sankey, scatter, scattergl, scatter3d, scattercarpet, scattergeo, scattermap, scatterpolar, scatterpolargl, scattersmith, scatterternary, scatterternarygl, splom, streamtube, sunburst, surface, table, treemap, violin, volume, waterfall. * * The type surface is the same as the full bundle, so this re-exports the * main declaration. A trace that is not registered at runtime still diff --git a/src/types/generated/entry_points/scatterternarygl.d.ts b/src/types/generated/entry_points/scatterternarygl.d.ts new file mode 100644 index 00000000000..31614824806 --- /dev/null +++ b/src/types/generated/entry_points/scatterternarygl.d.ts @@ -0,0 +1,19 @@ +/** + * Generated from lib/scatterternarygl.js by tasks/generate_entry_point_types.mjs. + * Do not edit by hand — run `npm run entry-point-types` to regenerate. + */ + +import type { RegisterTraceModule } from '../../core/api'; + +/** + * The `scatterternarygl` trace module, for `Plotly.register`. + * + * @example + * import * as Plotly from 'plotly.js/lib/core'; + * import * as scatterternarygl from 'plotly.js/lib/scatterternarygl'; + * + * Plotly.register([scatterternarygl]); + */ +declare const scatterternarygl: RegisterTraceModule & { name: 'scatterternarygl' }; + +export = scatterternarygl; From 57d34853451d21301b318820be90073dc7e2ff03 Mon Sep 17 00:00:00 2001 From: Lexachoc <20377719+Lexachoc@users.noreply.github.com> Date: Sun, 27 Sep 2026 23:34:12 +0200 Subject: [PATCH 8/8] update image baselines, downloaded from artifacts --- .../baselines/scatterternarygl_clipping.png | Bin 42441 -> 43668 bytes .../baselines/scatterternarygl_fills.png | Bin 39920 -> 40690 bytes .../baselines/scatterternarygl_lines.png | Bin 36045 -> 37422 bytes .../baselines/scatterternarygl_markers.png | Bin 39168 -> 39292 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/test/image/baselines/scatterternarygl_clipping.png b/test/image/baselines/scatterternarygl_clipping.png index 8c9b967c0d091f4e25c2eed80abe79a1fc434765..70c274283ff72dcaf44af2754940b656c08f7904 100644 GIT binary patch literal 43668 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≧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 F{|BHb6a4@H literal 42441 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

!D7qB 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 L`Fh-Q56}J|9+Utu diff --git a/test/image/baselines/scatterternarygl_lines.png b/test/image/baselines/scatterternarygl_lines.png index c7d90a10c1b5928500429a9c62a8cc09e31a8865..37badcbef3bc81f3ab4e1a793dc6859e53830c60 100644 GIT binary patch literal 37422 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℞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 KC>1DJJo`V&Ca^;Q literal 36045 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%0Dy^=O&@@8$SBUS6E2=U`ADSqSxJ5n=JePU&8VEt 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

sK@Zy?aPR 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 P9Rd|ab%ny)CISBg{9_<7 diff --git a/test/image/baselines/scatterternarygl_markers.png b/test/image/baselines/scatterternarygl_markers.png index 889ad49ab07ca411488589a93bcf22e25d074e89..22788a9666138f5641d02b0fdad6f6aaed37ea7f 100644 GIT binary patch literal 39292 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 I6^oGn1AO5+fdBvi literal 39168 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