Skip to content

Commit d8ff2d5

Browse files
committed
fix 6765 - ensure default range work with allowed min/max
1 parent 33dc2de commit d8ff2d5

File tree

4 files changed

+102
-0
lines changed

4 files changed

+102
-0
lines changed

src/plots/cartesian/set_convert.js

+5
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,11 @@ module.exports = function setConvert(ax, fullLayout) {
447447

448448
if(minallowed !== undefined && rng[0] < bounds[0]) range[axrev ? 1 : 0] = minallowed;
449449
if(maxallowed !== undefined && rng[1] > bounds[1]) range[axrev ? 0 : 1] = maxallowed;
450+
451+
if(range[0] === range[1]) {
452+
if(minallowed !== undefined) range[axrev ? 1 : 0] = ax.l2r(minallowed + 1);
453+
if(maxallowed !== undefined) range[axrev ? 0 : 1] = ax.l2r(maxallowed - 1);
454+
}
450455
};
451456

452457
/*

src/plots/polar/polar.js

+18
Original file line numberDiff line numberDiff line change
@@ -390,6 +390,24 @@ proto.doAutoRange = function(fullLayout, polarLayout) {
390390
radialAxis.r2l(rng[0], null, 'gregorian'),
391391
radialAxis.r2l(rng[1], null, 'gregorian')
392392
];
393+
394+
var minallowed = radialAxis.minallowed;
395+
if(minallowed !== undefined) {
396+
if(radialAxis._rl[0] > radialAxis._rl[1]) {
397+
radialAxis._rl[1] = Math.max(radialAxis._rl[1], minallowed);
398+
} else {
399+
radialAxis._rl[0] = Math.max(radialAxis._rl[0], minallowed);
400+
}
401+
}
402+
403+
var maxallowed = radialAxis.maxallowed;
404+
if(maxallowed !== undefined) {
405+
if(radialAxis._rl[0] < radialAxis._rl[1]) {
406+
radialAxis._rl[1] = Math.min(radialAxis._rl[1], maxallowed);
407+
} else {
408+
radialAxis._rl[0] = Math.min(radialAxis._rl[0], maxallowed);
409+
}
410+
}
393411
};
394412

395413
proto.updateRadialAxis = function(fullLayout, polarLayout) {
90.2 KB
Loading
+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
{
2+
"data": [
3+
{
4+
"type": "scatter",
5+
"mode": "markers",
6+
"xaxis": "x",
7+
"yaxis": "y",
8+
"x": [0,1,2,3,4,5,6,7,8,9,10],
9+
"y":[0,10,20,30,40,50,60,70,80,90,100]
10+
},
11+
{
12+
"type": "scatter",
13+
"mode": "markers",
14+
"xaxis": "x2",
15+
"yaxis": "y2",
16+
"x": [0,1,2,3,4,5,6,7,8,9,10],
17+
"y":[0,10,20,30,40,50,60,70,80,90,100]
18+
},
19+
{
20+
"type": "scatterpolar",
21+
"mode": "markers",
22+
"subplot": "polar",
23+
"r": [0,1,2,3,4,5,6,7,8,9,10],
24+
"theta":[0,10,20,30,40,50,60,70,80,90,100]
25+
},
26+
{
27+
"type": "scatterpolar",
28+
"mode": "markers",
29+
"subplot": "polar2",
30+
"r": [0,1,2,3,4,5,6,7,8,9,10],
31+
"theta":[0,10,20,30,40,50,60,70,80,90,100]
32+
}
33+
],
34+
"layout": {
35+
"showlegend": false,
36+
"width": 800,
37+
"height": 800,
38+
"xaxis": {
39+
"anchor": "y",
40+
"domain": [0, 0.45],
41+
"minallowed": 6
42+
},
43+
"yaxis": {
44+
"anchor": "x",
45+
"domain": [0, 0.45],
46+
"minallowed": 6
47+
},
48+
"xaxis2": {
49+
"autorange": "reversed",
50+
"anchor": "y2",
51+
"domain": [0, 0.45],
52+
"minallowed": 6
53+
},
54+
"yaxis2": {
55+
"anchor": "x2",
56+
"domain": [0.55, 1],
57+
"minallowed": 6
58+
},
59+
"polar": {
60+
"domain": {
61+
"x": [0.55, 1],
62+
"y": [0, 0.45]
63+
},
64+
"radialaxis": {
65+
"minallowed": 6
66+
}
67+
},
68+
"polar2": {
69+
"domain": {
70+
"x": [0.55, 1],
71+
"y": [0.55, 1]
72+
},
73+
"radialaxis": {
74+
"autorange": "reversed",
75+
"minallowed": 6
76+
}
77+
}
78+
}
79+
}

0 commit comments

Comments
 (0)