Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
c3-closed
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
charts
c3-closed
Commits
2647aeaf
Commit
2647aeaf
authored
Aug 13, 2016
by
Evgeny
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix bug for category x axis
parent
dc521a50
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
48 additions
and
18 deletions
+48
-18
c3.js
c3.js
+24
-9
c3.min.js
c3.min.js
+0
-0
axis.js
src/axis.js
+16
-4
c3.axis.js
src/c3.axis.js
+8
-5
No files found.
c3.js
View file @
2647aeaf
...
@@ -4661,11 +4661,13 @@
...
@@ -4661,11 +4661,13 @@
withoutTransition
:
withoutTransition
,
withoutTransition
:
withoutTransition
,
};
};
if
(
tickValues
&&
config
.
axis_x_start
){
if
(
!
$$
.
isTimeSeries
()
&&
$$
.
isXAxis
(
orient
)){
if
(
tickValues
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
return
x
+
config
.
axis_x_start
;
});
});
}
}
}
var
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
var
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
...
@@ -4694,14 +4696,23 @@
...
@@ -4694,14 +4696,23 @@
};
};
c3_chart_internal_fn
.
updateXAxisTickValues
=
function
(
targets
,
axis
)
{
c3_chart_internal_fn
.
updateXAxisTickValues
=
function
(
targets
,
axis
)
{
var
$$
=
this
,
config
=
$$
.
config
,
tickValues
;
var
$$
=
this
,
config
=
$$
.
config
,
tickValues
;
if
(
config
.
axis_x_tick_fit
||
config
.
axis_x_tick_count
)
{
if
(
config
.
axis_x_tick_fit
||
config
.
axis_x_tick_count
)
{
tickValues
=
$$
.
generateTickValues
(
$$
.
mapTargetsToUniqueXs
(
targets
),
config
.
axis_x_tick_count
,
$$
.
isTimeSeries
());
tickValues
=
$$
.
generateTickValues
(
$$
.
mapTargetsToUniqueXs
(
targets
),
config
.
axis_x_tick_count
,
$$
.
isTimeSeries
());
}
}
if
(
tickValues
&&
config
.
axis_x_start
){
if
(
!
$$
.
isTimeSeries
()
&&
$$
.
isXAxis
(
$$
.
xAxis
.
orient
())){
if
(
tickValues
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
if
(
x
instanceof
Date
){
return
x
;
}
return
x
+
$$
.
config
.
axis_x_start
;
});
});
}
}
}
if
(
axis
)
{
if
(
axis
)
{
axis
.
tickValues
(
tickValues
);
axis
.
tickValues
(
tickValues
);
}
else
{
}
else
{
...
@@ -4711,8 +4722,9 @@
...
@@ -4711,8 +4722,9 @@
return
tickValues
;
return
tickValues
;
};
};
c3_chart_internal_fn
.
getYAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
)
{
c3_chart_internal_fn
.
getYAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
)
{
var
axisParams
=
{
withOuterTick
:
withOuterTick
},
var
$$
=
this
,
axisParams
=
{
withOuterTick
:
withOuterTick
},
axis
=
c3_axis
(
this
.
d3
,
axisParams
,
this
).
scale
(
scale
).
orient
(
orient
).
tickFormat
(
tickFormat
);
axis
=
c3_axis
(
this
.
d3
,
axisParams
,
this
).
scale
(
scale
).
orient
(
orient
).
tickFormat
(
tickFormat
);
if
(
this
.
isTimeSeriesY
())
{
if
(
this
.
isTimeSeriesY
())
{
axis
.
ticks
(
this
.
d3
.
time
[
this
.
config
.
axis_y_tick_time_value
],
this
.
config
.
axis_y_tick_time_interval
);
axis
.
ticks
(
this
.
d3
.
time
[
this
.
config
.
axis_y_tick_time_value
],
this
.
config
.
axis_y_tick_time_interval
);
}
else
{
}
else
{
...
@@ -8187,8 +8199,7 @@
...
@@ -8187,8 +8199,7 @@
function
axisX
(
selection
,
x
)
{
function
axisX
(
selection
,
x
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
if
(
$$
.
isXAxis
(
orient
)){
if
(
$$
.
config
.
axis_x_start
){
d
-=
$$
.
config
.
axis_x_start
;
d
-=
$$
.
config
.
axis_x_start
;
}
}
...
@@ -8197,6 +8208,10 @@
...
@@ -8197,6 +8208,10 @@
}
}
function
axisY
(
selection
,
y
)
{
function
axisY
(
selection
,
y
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
if
(
$$
.
isXAxis
(
orient
)){
d
-=
$$
.
config
.
axis_x_start
;
}
return
"translate(0,"
+
Math
.
ceil
(
y
(
d
))
+
")"
;
return
"translate(0,"
+
Math
.
ceil
(
y
(
d
))
+
")"
;
});
});
}
}
...
@@ -8246,7 +8261,7 @@
...
@@ -8246,7 +8261,7 @@
}
}
domain
=
scale
.
domain
();
domain
=
scale
.
domain
();
for
(
i
=
Math
.
ceil
(
domain
[
0
]);
i
<
domain
[
1
];
i
++
)
{
for
(
i
=
Math
.
ceil
(
domain
[
0
]);
i
<
domain
[
1
];
i
++
)
{
ticks
.
push
(
i
);
ticks
.
push
(
i
+
$$
.
config
.
axis_x_start
);
}
}
if
(
ticks
.
length
>
0
&&
ticks
[
0
]
>
0
)
{
if
(
ticks
.
length
>
0
&&
ticks
[
0
]
>
0
)
{
ticks
.
unshift
(
ticks
[
0
]
-
(
ticks
[
1
]
-
ticks
[
0
]));
ticks
.
unshift
(
ticks
[
0
]
-
(
ticks
[
1
]
-
ticks
[
0
]));
...
@@ -8334,7 +8349,7 @@
...
@@ -8334,7 +8349,7 @@
var
tickText
,
var
tickText
,
subtext
,
spaceIndex
,
textWidth
,
thinOutCoef
,
splitted
=
[];
subtext
,
spaceIndex
,
textWidth
,
thinOutCoef
,
splitted
=
[];
if
(
$$
.
isCategorized
()
){
if
(
params
.
isCaregory
){
tickText
=
$$
.
categoryName
(
d
);
tickText
=
$$
.
categoryName
(
d
);
tickText
=
textFormatted
(
tickText
);
tickText
=
textFormatted
(
tickText
);
}
else
{
}
else
{
...
@@ -8409,7 +8424,7 @@
...
@@ -8409,7 +8424,7 @@
text
=
tick
.
select
(
"text"
);
text
=
tick
.
select
(
"text"
);
if
(
typeof
turn_axis_ticks
!==
'undefined'
||
typeof
turn_axis_ticks_90
!==
'undefined'
){
if
(
typeof
turn_axis_ticks
!==
'undefined'
||
typeof
turn_axis_ticks_90
!==
'undefined'
){
if
(
$$
.
isXAxis
(
orient
)
&&
$$
.
isCategorized
){
if
(
$$
.
isXAxis
(
orient
)
&&
params
.
isCategory
){
shouldSplitText
=
false
;
shouldSplitText
=
false
;
if
(
typeof
turn_axis_ticks
!==
'undefined'
){
if
(
typeof
turn_axis_ticks
!==
'undefined'
){
...
...
c3.min.js
View file @
2647aeaf
This source diff could not be displayed because it is too large. You can
view the blob
instead.
src/axis.js
View file @
2647aeaf
...
@@ -41,11 +41,13 @@ c3_chart_internal_fn.getXAxis = function (scale, orient, tickFormat, tickValues,
...
@@ -41,11 +41,13 @@ c3_chart_internal_fn.getXAxis = function (scale, orient, tickFormat, tickValues,
withoutTransition
:
withoutTransition
,
withoutTransition
:
withoutTransition
,
};
};
if
(
tickValues
&&
config
.
axis_x_start
){
if
(
!
$$
.
isTimeSeries
()
&&
$$
.
isXAxis
(
orient
)){
if
(
tickValues
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
return
x
+
config
.
axis_x_start
;
});
});
}
}
}
var
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
var
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
...
@@ -74,14 +76,23 @@ c3_chart_internal_fn.getXAxis = function (scale, orient, tickFormat, tickValues,
...
@@ -74,14 +76,23 @@ c3_chart_internal_fn.getXAxis = function (scale, orient, tickFormat, tickValues,
};
};
c3_chart_internal_fn
.
updateXAxisTickValues
=
function
(
targets
,
axis
)
{
c3_chart_internal_fn
.
updateXAxisTickValues
=
function
(
targets
,
axis
)
{
var
$$
=
this
,
config
=
$$
.
config
,
tickValues
;
var
$$
=
this
,
config
=
$$
.
config
,
tickValues
;
if
(
config
.
axis_x_tick_fit
||
config
.
axis_x_tick_count
)
{
if
(
config
.
axis_x_tick_fit
||
config
.
axis_x_tick_count
)
{
tickValues
=
$$
.
generateTickValues
(
$$
.
mapTargetsToUniqueXs
(
targets
),
config
.
axis_x_tick_count
,
$$
.
isTimeSeries
());
tickValues
=
$$
.
generateTickValues
(
$$
.
mapTargetsToUniqueXs
(
targets
),
config
.
axis_x_tick_count
,
$$
.
isTimeSeries
());
}
}
if
(
tickValues
&&
config
.
axis_x_start
){
if
(
!
$$
.
isTimeSeries
()
&&
$$
.
isXAxis
(
$$
.
xAxis
.
orient
())){
if
(
tickValues
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
if
(
x
instanceof
Date
){
return
x
;
}
return
x
+
$$
.
config
.
axis_x_start
;
});
});
}
}
}
if
(
axis
)
{
if
(
axis
)
{
axis
.
tickValues
(
tickValues
);
axis
.
tickValues
(
tickValues
);
}
else
{
}
else
{
...
@@ -91,8 +102,9 @@ c3_chart_internal_fn.updateXAxisTickValues = function (targets, axis) {
...
@@ -91,8 +102,9 @@ c3_chart_internal_fn.updateXAxisTickValues = function (targets, axis) {
return
tickValues
;
return
tickValues
;
};
};
c3_chart_internal_fn
.
getYAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
)
{
c3_chart_internal_fn
.
getYAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
)
{
var
axisParams
=
{
withOuterTick
:
withOuterTick
},
var
$$
=
this
,
axisParams
=
{
withOuterTick
:
withOuterTick
},
axis
=
c3_axis
(
this
.
d3
,
axisParams
,
this
).
scale
(
scale
).
orient
(
orient
).
tickFormat
(
tickFormat
);
axis
=
c3_axis
(
this
.
d3
,
axisParams
,
this
).
scale
(
scale
).
orient
(
orient
).
tickFormat
(
tickFormat
);
if
(
this
.
isTimeSeriesY
())
{
if
(
this
.
isTimeSeriesY
())
{
axis
.
ticks
(
this
.
d3
.
time
[
this
.
config
.
axis_y_tick_time_value
],
this
.
config
.
axis_y_tick_time_interval
);
axis
.
ticks
(
this
.
d3
.
time
[
this
.
config
.
axis_y_tick_time_value
],
this
.
config
.
axis_y_tick_time_interval
);
}
else
{
}
else
{
...
...
src/c3.axis.js
View file @
2647aeaf
...
@@ -14,8 +14,7 @@ function c3_axis(d3, params, $$) {
...
@@ -14,8 +14,7 @@ function c3_axis(d3, params, $$) {
function
axisX
(
selection
,
x
)
{
function
axisX
(
selection
,
x
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
if
(
$$
.
isXAxis
(
orient
)){
if
(
$$
.
config
.
axis_x_start
){
d
-=
$$
.
config
.
axis_x_start
;
d
-=
$$
.
config
.
axis_x_start
;
}
}
...
@@ -24,6 +23,10 @@ function c3_axis(d3, params, $$) {
...
@@ -24,6 +23,10 @@ function c3_axis(d3, params, $$) {
}
}
function
axisY
(
selection
,
y
)
{
function
axisY
(
selection
,
y
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
selection
.
attr
(
"transform"
,
function
(
d
)
{
if
(
$$
.
isXAxis
(
orient
)){
d
-=
$$
.
config
.
axis_x_start
;
}
return
"translate(0,"
+
Math
.
ceil
(
y
(
d
))
+
")"
;
return
"translate(0,"
+
Math
.
ceil
(
y
(
d
))
+
")"
;
});
});
}
}
...
@@ -73,7 +76,7 @@ function c3_axis(d3, params, $$) {
...
@@ -73,7 +76,7 @@ function c3_axis(d3, params, $$) {
}
}
domain
=
scale
.
domain
();
domain
=
scale
.
domain
();
for
(
i
=
Math
.
ceil
(
domain
[
0
]);
i
<
domain
[
1
];
i
++
)
{
for
(
i
=
Math
.
ceil
(
domain
[
0
]);
i
<
domain
[
1
];
i
++
)
{
ticks
.
push
(
i
);
ticks
.
push
(
i
+
$$
.
config
.
axis_x_start
);
}
}
if
(
ticks
.
length
>
0
&&
ticks
[
0
]
>
0
)
{
if
(
ticks
.
length
>
0
&&
ticks
[
0
]
>
0
)
{
ticks
.
unshift
(
ticks
[
0
]
-
(
ticks
[
1
]
-
ticks
[
0
]));
ticks
.
unshift
(
ticks
[
0
]
-
(
ticks
[
1
]
-
ticks
[
0
]));
...
@@ -161,7 +164,7 @@ function c3_axis(d3, params, $$) {
...
@@ -161,7 +164,7 @@ function c3_axis(d3, params, $$) {
var
tickText
,
var
tickText
,
subtext
,
spaceIndex
,
textWidth
,
thinOutCoef
,
splitted
=
[];
subtext
,
spaceIndex
,
textWidth
,
thinOutCoef
,
splitted
=
[];
if
(
$$
.
isCategorized
()
){
if
(
params
.
isCaregory
){
tickText
=
$$
.
categoryName
(
d
);
tickText
=
$$
.
categoryName
(
d
);
tickText
=
textFormatted
(
tickText
);
tickText
=
textFormatted
(
tickText
);
}
else
{
}
else
{
...
@@ -236,7 +239,7 @@ function c3_axis(d3, params, $$) {
...
@@ -236,7 +239,7 @@ function c3_axis(d3, params, $$) {
text
=
tick
.
select
(
"text"
);
text
=
tick
.
select
(
"text"
);
if
(
typeof
turn_axis_ticks
!==
'undefined'
||
typeof
turn_axis_ticks_90
!==
'undefined'
){
if
(
typeof
turn_axis_ticks
!==
'undefined'
||
typeof
turn_axis_ticks_90
!==
'undefined'
){
if
(
$$
.
isXAxis
(
orient
)
&&
$$
.
isCategorized
){
if
(
$$
.
isXAxis
(
orient
)
&&
params
.
isCategory
){
shouldSplitText
=
false
;
shouldSplitText
=
false
;
if
(
typeof
turn_axis_ticks
!==
'undefined'
){
if
(
typeof
turn_axis_ticks
!==
'undefined'
){
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment