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
8707812a
Commit
8707812a
authored
Aug 12, 2016
by
Evgeny
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add config.axis_x_start option to start x ticks with some value
parent
cdae9823
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
87 additions
and
6 deletions
+87
-6
c3.js
c3.js
+22
-3
c3.min.js
c3.min.js
+0
-0
axis-spec.js
spec/axis-spec.js
+43
-0
axis.js
src/axis.js
+15
-2
c3.axis.js
src/c3.axis.js
+6
-1
config.js
src/config.js
+1
-0
No files found.
c3.js
View file @
8707812a
...
@@ -1200,6 +1200,7 @@
...
@@ -1200,6 +1200,7 @@
// axis
// axis
axis_rotated
:
false
,
axis_rotated
:
false
,
axis_x_show
:
true
,
axis_x_show
:
true
,
axis_x_start
:
0
,
axis_x_type
:
'indexed'
,
axis_x_type
:
'indexed'
,
axis_x_localtime
:
true
,
axis_x_localtime
:
true
,
axis_x_categories
:
[],
axis_x_categories
:
[],
...
@@ -4650,6 +4651,7 @@
...
@@ -4650,6 +4651,7 @@
.
style
(
"text-anchor"
,
$$
.
textAnchorForY2AxisLabel
.
bind
(
$$
));
.
style
(
"text-anchor"
,
$$
.
textAnchorForY2AxisLabel
.
bind
(
$$
));
};
};
c3_chart_internal_fn
.
getXAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
,
withoutTransition
)
{
c3_chart_internal_fn
.
getXAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
,
withoutTransition
)
{
var
$$
=
this
,
config
=
$$
.
config
,
var
$$
=
this
,
config
=
$$
.
config
,
axisParams
=
{
axisParams
=
{
isCategory
:
$$
.
isCategorized
(),
isCategory
:
$$
.
isCategorized
(),
...
@@ -4657,8 +4659,15 @@
...
@@ -4657,8 +4659,15 @@
tickMultiline
:
config
.
axis_x_tick_multiline
,
tickMultiline
:
config
.
axis_x_tick_multiline
,
tickWidth
:
config
.
axis_x_tick_width
,
tickWidth
:
config
.
axis_x_tick_width
,
withoutTransition
:
withoutTransition
,
withoutTransition
:
withoutTransition
,
},
};
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
if
(
tickValues
&&
config
.
axis_x_start
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
});
}
var
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
if
(
$$
.
isTimeSeries
()
&&
tickValues
)
{
if
(
$$
.
isTimeSeries
()
&&
tickValues
)
{
tickValues
=
tickValues
.
map
(
function
(
v
)
{
return
$$
.
parseDate
(
v
);
});
tickValues
=
tickValues
.
map
(
function
(
v
)
{
return
$$
.
parseDate
(
v
);
});
...
@@ -4688,6 +4697,11 @@
...
@@ -4688,6 +4697,11 @@
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
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
});
}
if
(
axis
)
{
if
(
axis
)
{
axis
.
tickValues
(
tickValues
);
axis
.
tickValues
(
tickValues
);
}
else
{
}
else
{
...
@@ -8216,7 +8230,12 @@
...
@@ -8216,7 +8230,12 @@
return
!
(
id
%
divisor
);
return
!
(
id
%
divisor
);
}
}
function
generateTicks
(
scale
)
{
function
generateTicks
(
scale
)
{
var
i
,
domain
,
ticks
=
[];
var
i
,
domain
,
ticks
=
[],
startValue
=
0
;
if
(
$$
.
isXAxis
(
orient
)
&&
$$
.
config
.
axis_x_start
){
startValue
=
$$
.
config
.
axis_x_start
;
}
if
(
scale
.
ticks
)
{
if
(
scale
.
ticks
)
{
return
scale
.
ticks
.
apply
(
scale
,
tickArguments
);
return
scale
.
ticks
.
apply
(
scale
,
tickArguments
);
}
}
...
...
c3.min.js
View file @
8707812a
This source diff could not be displayed because it is too large. You can
view the blob
instead.
spec/axis-spec.js
View file @
8707812a
...
@@ -786,4 +786,47 @@ describe('c3 chart axis', function () {
...
@@ -786,4 +786,47 @@ describe('c3 chart axis', function () {
});
});
});
});
describe
(
'start with'
,
function
(){
it
(
'should update args'
,
function
(){
args
=
{
data
:
{
columns
:
[
[
'data1'
,
0
,
1
,
2
,
3
]
]
},
axis
:
{
x
:
{
show
:
true
,
start
:
1
},
y
:
{
show
:
true
}
}
};
expect
(
true
).
toBeTruthy
();
});
it
(
'should start x ticks with axis_x_start'
,
function
(){
var
xTickSpans
=
chart
.
internal
.
main
.
selectAll
(
'.c3-axis-x g.tick text tspan'
)[
0
];
var
yTickSpans
=
chart
.
internal
.
main
.
selectAll
(
'.c3-axis-y g.tick text tspan'
)[
0
];
expect
(
xTickSpans
[
0
].
textContent
).
toBe
(
'1'
);
expect
(
yTickSpans
[
0
].
textContent
).
toBe
(
'0'
);
});
it
(
'should work with load'
,
function
(){
chart
.
load
({
columns
:
[
'data2'
,
4
,
5
,
6
]
});
var
xTickSpans
=
chart
.
internal
.
main
.
selectAll
(
'.c3-axis-x g.tick text tspan'
)[
0
];
var
yTickSpans
=
chart
.
internal
.
main
.
selectAll
(
'.c3-axis-y g.tick text tspan'
)[
0
];
expect
(
xTickSpans
[
0
].
textContent
).
toBe
(
'1'
);
expect
(
yTickSpans
[
0
].
textContent
).
toBe
(
'0'
);
});
});
});
});
src/axis.js
View file @
8707812a
...
@@ -31,6 +31,7 @@ c3_chart_internal_fn.initAxis = function(){
...
@@ -31,6 +31,7 @@ c3_chart_internal_fn.initAxis = function(){
.
style
(
"text-anchor"
,
$$
.
textAnchorForY2AxisLabel
.
bind
(
$$
));
.
style
(
"text-anchor"
,
$$
.
textAnchorForY2AxisLabel
.
bind
(
$$
));
};
};
c3_chart_internal_fn
.
getXAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
,
withoutTransition
)
{
c3_chart_internal_fn
.
getXAxis
=
function
(
scale
,
orient
,
tickFormat
,
tickValues
,
withOuterTick
,
withoutTransition
)
{
var
$$
=
this
,
config
=
$$
.
config
,
var
$$
=
this
,
config
=
$$
.
config
,
axisParams
=
{
axisParams
=
{
isCategory
:
$$
.
isCategorized
(),
isCategory
:
$$
.
isCategorized
(),
...
@@ -38,8 +39,15 @@ c3_chart_internal_fn.getXAxis = function (scale, orient, tickFormat, tickValues,
...
@@ -38,8 +39,15 @@ c3_chart_internal_fn.getXAxis = function (scale, orient, tickFormat, tickValues,
tickMultiline
:
config
.
axis_x_tick_multiline
,
tickMultiline
:
config
.
axis_x_tick_multiline
,
tickWidth
:
config
.
axis_x_tick_width
,
tickWidth
:
config
.
axis_x_tick_width
,
withoutTransition
:
withoutTransition
,
withoutTransition
:
withoutTransition
,
},
};
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
if
(
tickValues
&&
config
.
axis_x_start
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
});
}
var
axis
=
c3_axis
(
$$
.
d3
,
axisParams
,
$$
).
scale
(
scale
).
orient
(
orient
);
if
(
$$
.
isTimeSeries
()
&&
tickValues
)
{
if
(
$$
.
isTimeSeries
()
&&
tickValues
)
{
tickValues
=
tickValues
.
map
(
function
(
v
)
{
return
$$
.
parseDate
(
v
);
});
tickValues
=
tickValues
.
map
(
function
(
v
)
{
return
$$
.
parseDate
(
v
);
});
...
@@ -69,6 +77,11 @@ c3_chart_internal_fn.updateXAxisTickValues = function (targets, axis) {
...
@@ -69,6 +77,11 @@ c3_chart_internal_fn.updateXAxisTickValues = function (targets, axis) {
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
){
tickValues
=
tickValues
.
map
(
function
(
x
)
{
return
x
+
config
.
axis_x_start
;
});
}
if
(
axis
)
{
if
(
axis
)
{
axis
.
tickValues
(
tickValues
);
axis
.
tickValues
(
tickValues
);
}
else
{
}
else
{
...
...
src/c3.axis.js
View file @
8707812a
...
@@ -57,7 +57,12 @@ function c3_axis(d3, params, $$) {
...
@@ -57,7 +57,12 @@ function c3_axis(d3, params, $$) {
return
!
(
id
%
divisor
);
return
!
(
id
%
divisor
);
}
}
function
generateTicks
(
scale
)
{
function
generateTicks
(
scale
)
{
var
i
,
domain
,
ticks
=
[];
var
i
,
domain
,
ticks
=
[],
startValue
=
0
;
if
(
$$
.
isXAxis
(
orient
)
&&
$$
.
config
.
axis_x_start
){
startValue
=
$$
.
config
.
axis_x_start
;
}
if
(
scale
.
ticks
)
{
if
(
scale
.
ticks
)
{
return
scale
.
ticks
.
apply
(
scale
,
tickArguments
);
return
scale
.
ticks
.
apply
(
scale
,
tickArguments
);
}
}
...
...
src/config.js
View file @
8707812a
...
@@ -82,6 +82,7 @@ c3_chart_internal_fn.getDefaultConfig = function () {
...
@@ -82,6 +82,7 @@ c3_chart_internal_fn.getDefaultConfig = function () {
// axis
// axis
axis_rotated
:
false
,
axis_rotated
:
false
,
axis_x_show
:
true
,
axis_x_show
:
true
,
axis_x_start
:
0
,
axis_x_type
:
'indexed'
,
axis_x_type
:
'indexed'
,
axis_x_localtime
:
true
,
axis_x_localtime
:
true
,
axis_x_categories
:
[],
axis_x_categories
:
[],
...
...
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