Skip to content

Commit aa57518

Browse files
committed
handle multi-line dates on x-axis
1 parent b46327c commit aa57518

File tree

8 files changed

+276
-2
lines changed

8 files changed

+276
-2
lines changed

src/plots/cartesian/axes.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2671,7 +2671,7 @@ axes.makeLabelFns = function(ax, shift, angle) {
26712671
};
26722672
out.heightFn = function(d, a, h) {
26732673
return (a < -60 || a > 60) ? -0.5 * h :
2674-
ax.side === 'top' ? -h :
2674+
((ax.side === 'top') !== insideTickLabels) ? -h :
26752675
0;
26762676
};
26772677
} else if(axLetter === 'y') {
4.21 KB
Loading
85.3 KB
Loading
79.1 KB
Loading

test/image/mocks/ticklabelposition-1.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
}, {
1818
"xaxis": "x4",
1919
"yaxis": "y4",
20-
"x": ["01", "10"],
20+
"x": ["20-12-20", "21-01-20"],
2121
"y": [1e-1, 1e+6]
2222
}],
2323
"layout": {
+135
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
{
2+
"data": [{
3+
"xaxis": "x",
4+
"yaxis": "y",
5+
"x": [-5000, 10000],
6+
"y": [-5000, 10000]
7+
}, {
8+
"xaxis": "x2",
9+
"yaxis": "y2",
10+
"x": [-5000, 10000],
11+
"y": [-5000, 10000]
12+
}, {
13+
"xaxis": "x3",
14+
"yaxis": "y3",
15+
"x": [-5000, 10000],
16+
"y": [-5000, 10000]
17+
}, {
18+
"xaxis": "x4",
19+
"yaxis": "y4",
20+
"x": [-5000, 10000],
21+
"y": [-5000, 10000]
22+
}],
23+
"layout": {
24+
"xaxis": {
25+
"anchor": "y",
26+
"domain": [0, 0.475],
27+
"side": "bottom",
28+
"ticks": "inside",
29+
"ticklabelposition": "inside",
30+
"tickfont": { "size": 16 },
31+
"ticklen": 0,
32+
"tickangle": 30,
33+
"linewidth": 0,
34+
"gridcolor": "white"
35+
},
36+
"yaxis": {
37+
"anchor": "x",
38+
"domain": [0, 0.475],
39+
"side": "left",
40+
"ticks": "inside",
41+
"ticklabelposition": "inside",
42+
"tickfont": { "size": 16 },
43+
"ticklen": 0,
44+
"tickangle": -60,
45+
"linewidth": 0,
46+
"gridcolor": "white"
47+
},
48+
"xaxis2": {
49+
"anchor": "y2",
50+
"domain": [0.525, 1],
51+
"side": "bottom",
52+
"ticks": "inside",
53+
"ticklabelposition": "inside",
54+
"tickfont": { "size": 16 },
55+
"ticklen": 0,
56+
"tickangle": 60,
57+
"linewidth": 0,
58+
"gridcolor": "white"
59+
},
60+
"yaxis2": {
61+
"anchor": "x2",
62+
"domain": [0, 0.475],
63+
"side": "right",
64+
"ticks": "inside",
65+
"ticklabelposition": "inside",
66+
"tickfont": { "size": 16 },
67+
"ticklen": 0,
68+
"tickangle": -30,
69+
"linewidth": 0,
70+
"gridcolor": "white"
71+
},
72+
"xaxis3": {
73+
"anchor": "y3",
74+
"domain": [0.525, 1],
75+
"side": "top",
76+
"ticks": "inside",
77+
"ticklabelposition": "inside",
78+
"tickfont": { "size": 16 },
79+
"ticklen": 0,
80+
"tickangle": -30,
81+
"linewidth": 0,
82+
"gridcolor": "white"
83+
},
84+
"yaxis3": {
85+
"anchor": "x3",
86+
"domain": [0.525, 1],
87+
"side": "right",
88+
"ticks": "inside",
89+
"ticklabelposition": "inside",
90+
"tickfont": { "size": 16 },
91+
"ticklen": 0,
92+
"tickangle": 60,
93+
"linewidth": 0,
94+
"gridcolor": "white"
95+
},
96+
"xaxis4": {
97+
"anchor": "y4",
98+
"domain": [0, 0.475],
99+
"ticklabelmode": "period",
100+
"side": "top",
101+
"ticks": "inside",
102+
"ticklabelposition": "inside",
103+
"tickfont": { "size": 16 },
104+
"ticklen": 0,
105+
"tickangle": -60,
106+
"linewidth": 0,
107+
"gridcolor": "white"
108+
},
109+
"yaxis4": {
110+
"anchor": "x4",
111+
"domain": [0.525, 1],
112+
"side": "left",
113+
"ticks": "inside",
114+
"ticklabelposition": "inside",
115+
"tickfont": { "size": 16 },
116+
"ticklen": 0,
117+
"tickangle": 30,
118+
"linewidth": 0,
119+
"gridcolor": "white"
120+
},
121+
"font": {
122+
"family": "Raleway"
123+
},
124+
"plot_bgcolor": "lightblue",
125+
"showlegend": false,
126+
"width": 800,
127+
"height": 800,
128+
"margin": {
129+
"t": 40,
130+
"b": 40,
131+
"l": 40,
132+
"r": 40
133+
}
134+
}
135+
}
+135
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
{
2+
"data": [{
3+
"xaxis": "x",
4+
"yaxis": "y",
5+
"x": [-5000, 10000],
6+
"y": [-5000, 10000]
7+
}, {
8+
"xaxis": "x2",
9+
"yaxis": "y2",
10+
"x": [-5000, 10000],
11+
"y": [-5000, 10000]
12+
}, {
13+
"xaxis": "x3",
14+
"yaxis": "y3",
15+
"x": [-5000, 10000],
16+
"y": [-5000, 10000]
17+
}, {
18+
"xaxis": "x4",
19+
"yaxis": "y4",
20+
"x": [-5000, 10000],
21+
"y": [-5000, 10000]
22+
}],
23+
"layout": {
24+
"xaxis": {
25+
"anchor": "y",
26+
"domain": [0, 0.475],
27+
"side": "bottom",
28+
"ticks": "inside",
29+
"ticklabelposition": "inside",
30+
"tickfont": { "size": 16 },
31+
"ticklen": 0,
32+
"tickangle": 90,
33+
"linewidth": 0,
34+
"gridcolor": "white"
35+
},
36+
"yaxis": {
37+
"anchor": "x",
38+
"domain": [0, 0.475],
39+
"side": "left",
40+
"ticks": "inside",
41+
"ticklabelposition": "inside",
42+
"tickfont": { "size": 16 },
43+
"ticklen": 0,
44+
"tickangle": 90,
45+
"linewidth": 0,
46+
"gridcolor": "white"
47+
},
48+
"xaxis2": {
49+
"anchor": "y2",
50+
"domain": [0.525, 1],
51+
"side": "bottom",
52+
"ticks": "inside",
53+
"ticklabelposition": "inside",
54+
"tickfont": { "size": 16 },
55+
"ticklen": 0,
56+
"tickangle": -90,
57+
"linewidth": 0,
58+
"gridcolor": "white"
59+
},
60+
"yaxis2": {
61+
"anchor": "x2",
62+
"domain": [0, 0.475],
63+
"side": "right",
64+
"ticks": "inside",
65+
"ticklabelposition": "inside",
66+
"tickfont": { "size": 16 },
67+
"ticklen": 0,
68+
"tickangle": 90,
69+
"linewidth": 0,
70+
"gridcolor": "white"
71+
},
72+
"xaxis3": {
73+
"anchor": "y3",
74+
"domain": [0.525, 1],
75+
"side": "top",
76+
"ticks": "inside",
77+
"ticklabelposition": "inside",
78+
"tickfont": { "size": 16 },
79+
"ticklen": 0,
80+
"tickangle": -90,
81+
"linewidth": 0,
82+
"gridcolor": "white"
83+
},
84+
"yaxis3": {
85+
"anchor": "x3",
86+
"domain": [0.525, 1],
87+
"side": "right",
88+
"ticks": "inside",
89+
"ticklabelposition": "inside",
90+
"tickfont": { "size": 16 },
91+
"ticklen": 0,
92+
"tickangle": 90,
93+
"linewidth": 0,
94+
"gridcolor": "white"
95+
},
96+
"xaxis4": {
97+
"anchor": "y4",
98+
"domain": [0, 0.475],
99+
"ticklabelmode": "period",
100+
"side": "top",
101+
"ticks": "inside",
102+
"ticklabelposition": "inside",
103+
"tickfont": { "size": 16 },
104+
"ticklen": 0,
105+
"tickangle": 90,
106+
"linewidth": 0,
107+
"gridcolor": "white"
108+
},
109+
"yaxis4": {
110+
"anchor": "x4",
111+
"domain": [0.525, 1],
112+
"side": "left",
113+
"ticks": "inside",
114+
"ticklabelposition": "inside",
115+
"tickfont": { "size": 16 },
116+
"ticklen": 0,
117+
"tickangle": -90,
118+
"linewidth": 0,
119+
"gridcolor": "white"
120+
},
121+
"font": {
122+
"family": "Raleway"
123+
},
124+
"plot_bgcolor": "lightblue",
125+
"showlegend": false,
126+
"width": 800,
127+
"height": 800,
128+
"margin": {
129+
"t": 40,
130+
"b": 40,
131+
"l": 40,
132+
"r": 40
133+
}
134+
}
135+
}

test/jasmine/tests/mock_test.js

+4
Original file line numberDiff line numberDiff line change
@@ -966,6 +966,8 @@ var list = [
966966
'ticklabelposition-2',
967967
'ticklabelposition-a',
968968
'ticklabelposition-b',
969+
'ticklabelposition-c',
970+
'ticklabelposition-d',
969971
'tickson_boundaries',
970972
'titles-avoid-labels',
971973
'trace_metatext',
@@ -2046,6 +2048,8 @@ figs['ticklabelposition-1'] = require('@mocks/ticklabelposition-1');
20462048
figs['ticklabelposition-2'] = require('@mocks/ticklabelposition-2');
20472049
figs['ticklabelposition-a'] = require('@mocks/ticklabelposition-a');
20482050
figs['ticklabelposition-b'] = require('@mocks/ticklabelposition-b');
2051+
figs['ticklabelposition-c'] = require('@mocks/ticklabelposition-c');
2052+
figs['ticklabelposition-d'] = require('@mocks/ticklabelposition-d');
20492053
figs['tickson_boundaries'] = require('@mocks/tickson_boundaries');
20502054
// figs['titles-avoid-labels'] = require('@mocks/titles-avoid-labels');
20512055
// figs['trace_metatext'] = require('@mocks/trace_metatext');

0 commit comments

Comments
 (0)