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
111ccb37
Commit
111ccb37
authored
Aug 16, 2013
by
Masayuki Tanaka
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Refactor checking undefined
parent
6dac66af
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
38 additions
and
31 deletions
+38
-31
c3.js
c3.js
+38
-31
No files found.
c3.js
View file @
111ccb37
...
...
@@ -104,8 +104,8 @@
var
date
=
isTimeSeries
?
d
[
0
].
x
.
getFullYear
()
+
'.'
+
(
d
[
0
].
x
.
getMonth
()
+
1
)
+
'.'
+
d
[
0
].
x
.
getDate
()
:
isCategorized
?
category
(
d
[
0
].
x
)
:
d
[
0
].
x
,
text
=
"<table class='tooltip'><tr><th colspan='2'>"
+
date
+
"</th></tr>"
,
i
,
value
,
name
;
for
(
i
=
0
;
i
<
d
.
length
;
i
++
){
if
(
typeof
d
[
i
]
!==
'undefined'
)
{
value
=
typeof
d
[
i
].
value
!==
'undefined'
?
(
Math
.
round
(
d
[
i
].
value
*
100
)
/
100
).
toFixed
(
2
)
:
'-'
;
if
(
isDefined
(
d
[
i
])
)
{
value
=
isDefined
(
d
[
i
].
value
)
?
(
Math
.
round
(
d
[
i
].
value
*
100
)
/
100
).
toFixed
(
2
)
:
'-'
;
name
=
d
[
i
].
name
;
}
else
{
value
=
'-'
;
...
...
@@ -343,7 +343,7 @@
for
(
j
=
0
;
j
<
__data_groups
.
length
;
j
++
)
{
for
(
k
=
1
;
k
<
__data_groups
[
j
].
length
;
k
++
)
{
if
(
!
isBarType
(
__data_groups
[
j
][
k
]))
continue
if
(
typeof
ys
[
__data_groups
[
j
][
k
]]
===
'undefined'
)
continue
if
(
isUndefined
(
ys
[
__data_groups
[
j
][
k
]])
)
continue
ys
[
__data_groups
[
j
][
k
]].
forEach
(
function
(
v
,
i
){
if
(
getAxisId
(
__data_groups
[
j
][
k
])
===
getAxisId
(
__data_groups
[
j
][
0
])){
ys
[
__data_groups
[
j
][
0
]][
i
]
+=
v
*
1
...
...
@@ -424,7 +424,7 @@
for
(
i
=
0
;
i
<
columns
.
length
;
i
++
)
{
key
=
columns
[
i
][
0
]
for
(
j
=
1
;
j
<
columns
[
i
].
length
;
j
++
)
{
if
(
typeof
new_rows
[
j
-
1
]
===
'undefined'
)
{
if
(
isUndefined
(
new_rows
[
j
-
1
])
)
{
new_rows
[
j
-
1
]
=
{}
}
new_rows
[
j
-
1
][
key
]
=
columns
[
i
][
j
]
...
...
@@ -480,7 +480,7 @@
return
d3
.
max
(
c3
.
data
.
targets
,
function
(
t
){
return
t
.
values
.
length
})
}
function
getTargetIds
(
targets
)
{
targets
=
(
typeof
targets
===
'undefined'
)
?
c3
.
data
.
targets
:
targets
targets
=
isUndefined
(
targets
)
?
c3
.
data
.
targets
:
targets
return
targets
.
map
(
function
(
d
){
return
d
.
id
;
})
}
function
hasTarget
(
id
)
{
...
...
@@ -491,7 +491,7 @@
return
false
}
function
getTargets
(
filter
)
{
return
typeof
filter
!==
'undefined'
?
c3
.
data
.
targets
.
filter
(
filter
)
:
c3
.
data
.
targets
return
isDefined
(
filter
)
?
c3
.
data
.
targets
.
filter
(
filter
)
:
c3
.
data
.
targets
}
function
category
(
i
)
{
return
i
<
__axis_x_categories
.
length
?
__axis_x_categories
[
i
]
:
i
...
...
@@ -538,7 +538,7 @@
}
}
}
if
(
typeof
indices
[
d
.
id
]
===
'undefined'
)
indices
[
d
.
id
]
=
i
++
if
(
isUndefined
(
indices
[
d
.
id
])
)
indices
[
d
.
id
]
=
i
++
})
indices
.
__max__
=
i
-
1
return
indices
...
...
@@ -578,7 +578,7 @@
//-- Type --//
function
setTargetType
(
targets
,
type
)
{
var
targetIds
=
typeof
targets
===
'undefined'
?
getTargetIds
()
:
targets
var
targetIds
=
isUndefined
(
targets
)
?
getTargetIds
()
:
targets
if
(
typeof
targetIds
===
'string'
)
targetIds
=
[
targetIds
]
for
(
var
i
=
0
;
i
<
targetIds
.
length
;
i
++
)
{
__data_types
[
targetIds
[
i
]]
=
type
...
...
@@ -701,12 +701,12 @@
var
xValue
,
yValue
// Check start/end of regions
if
(
typeof
regions
!==
'undefined'
)
{
if
(
isDefined
(
regions
)
)
{
for
(
i
=
0
;
i
<
regions
.
length
;
i
++
){
if
(
typeof
regions
[
i
].
start
===
'undefined'
)
{
if
(
isUndefined
(
regions
[
i
].
start
)
)
{
regions
[
i
].
start
=
d
[
0
].
x
}
if
(
typeof
regions
[
i
].
end
===
'undefined'
)
{
if
(
isUndefined
(
regions
[
i
].
end
)
)
{
regions
[
i
].
end
=
d
[
d
.
length
-
1
].
x
}
}
...
...
@@ -719,7 +719,7 @@
// Generate
for
(
i
=
0
;
i
<
d
.
length
;
i
++
)
{
// Draw as normal
if
(
typeof
regions
===
'undefined'
||
!
isWithinRegions
(
d
[
i
].
x
,
regions
))
{
if
(
isUndefined
(
regions
)
||
!
isWithinRegions
(
d
[
i
].
x
,
regions
))
{
s
+=
" "
+
xValue
(
d
[
i
])
+
" "
+
yValue
(
d
[
i
])
}
// Draw with region // TODO: Fix for horizotal charts
...
...
@@ -845,9 +845,9 @@
// Add id,name to selectedData
for
(
j
=
0
;
j
<
selectedData
.
length
;
j
++
)
{
if
(
typeof
selectedData
[
j
]
===
'undefined'
)
continue
;
if
(
isUndefined
(
selectedData
[
j
])
)
continue
;
name
=
__data_names
[
selectedData
[
j
].
id
];
selectedData
[
j
].
name
=
typeof
name
!==
'undefined'
?
name
:
selectedData
[
j
].
id
;
selectedData
[
j
].
name
=
isDefined
(
name
)
?
name
:
selectedData
[
j
].
id
;
}
// Sort selectedData as names order
if
(
Object
.
keys
(
__data_names
).
length
>
0
)
{
...
...
@@ -1106,8 +1106,8 @@
var
barX
,
barY
,
barW
,
barH
var
rectX
,
rectW
withY
=
(
typeof
withY
===
'undefined'
)
?
false
:
withY
withSubchart
=
(
typeof
withSubchart
===
'undefined'
)
?
false
:
withSubchart
withY
=
isDefined
(
withY
)
?
withY
:
false
withSubchart
=
isDefined
(
withSubchart
)
?
withSubchart
:
false
// ATTENTION: call here to update tickOffset
x
.
domain
(
brush
.
empty
()
?
subX
.
domain
()
:
brush
.
extent
())
...
...
@@ -1274,7 +1274,7 @@
.
attr
(
"y"
,
__axis_rotated
?
regionStart
:
margin
.
top
)
.
attr
(
"width"
,
__axis_rotated
?
width
:
regionWidth
)
.
attr
(
"height"
,
__axis_rotated
?
regionWidth
:
height
)
.
style
(
"fill-opacity"
,
function
(
d
){
return
typeof
d
.
opacity
!==
'undefined'
?
d
.
opacity
:
.
1
})
.
style
(
"fill-opacity"
,
function
(
d
){
return
isDefined
(
d
.
opacity
)
?
d
.
opacity
:
.
1
})
mainRegion
.
exit
().
transition
().
duration
(
withTransition
?
250
:
0
)
.
style
(
"fill-opacity"
,
0
)
.
remove
()
...
...
@@ -1434,7 +1434,7 @@
.
attr
(
'width'
,
10
)
.
attr
(
'height'
,
10
)
l
.
append
(
'text'
)
.
text
(
function
(
d
){
return
typeof
__data_names
[
d
]
!==
'undefined'
?
__data_names
[
d
]
:
d
;
})
.
text
(
function
(
d
){
return
isDefined
(
__data_names
[
d
])
?
__data_names
[
d
]
:
d
;
})
.
attr
(
'x'
,
-
200
)
.
attr
(
'y'
,
function
(
d
,
i
){
return
legendHeight
/
2
})
...
...
@@ -1457,7 +1457,7 @@
/*-- Event Handling --*/
function
getTargetSelector
(
target
)
{
return
(
typeof
target
===
'undefined'
)
?
'.target'
:
'.target-'
+
target
return
isDefined
(
target
)
?
'.target-'
+
target
:
'.target'
}
c3
.
focus
=
function
(
target
)
{
...
...
@@ -1499,7 +1499,7 @@
c3
.
load
=
function
(
args
)
{
// check args
if
(
typeof
args
.
done
===
'undefined'
)
{
if
(
isUndefined
(
args
.
done
)
)
{
args
.
done
=
function
()
{}
}
// use cache if exists
...
...
@@ -1545,7 +1545,7 @@
}
c3
.
selected
=
function
(
target
)
{
var
suffix
=
(
typeof
target
!==
'undefined'
)
?
'-'
+
target
:
''
var
suffix
=
isDefined
(
target
)
?
'-'
+
target
:
''
return
d3
.
merge
(
main
.
selectAll
(
'.__shapes'
+
suffix
).
selectAll
(
'.__shape'
)
.
filter
(
function
(){
return
d3
.
select
(
this
).
classed
(
'_s_'
)
})
...
...
@@ -1559,10 +1559,10 @@
var
selectShape
=
(
this
.
nodeName
===
'circle'
)
?
selectPoint
:
selectBar
,
unselectShape
=
(
this
.
nodeName
===
'circle'
)
?
unselectPoint
:
unselectBar
if
(
indices
.
indexOf
(
i
)
>=
0
)
{
if
(
__data_selection_isselectable
(
d
)
&&
(
__data_selection_grouped
||
typeof
ids
===
'undefined'
||
ids
.
indexOf
(
d
.
id
)
>=
0
))
{
if
(
__data_selection_isselectable
(
d
)
&&
(
__data_selection_grouped
||
isUndefined
(
ids
)
||
ids
.
indexOf
(
d
.
id
)
>=
0
))
{
selectShape
(
d3
.
select
(
this
).
classed
(
'_s_'
,
true
),
d
,
i
)
}
}
else
if
(
typeof
resetOther
!==
'undefined'
&&
resetOther
)
{
}
else
if
(
isDefined
(
resetOther
)
&&
resetOther
)
{
unselectShape
(
d3
.
select
(
this
).
classed
(
'_s_'
,
false
),
d
,
i
)
}
})
...
...
@@ -1572,8 +1572,8 @@
if
(
!
__data_selection_enabled
)
return
main
.
selectAll
(
'.__shapes'
).
selectAll
(
'.__shape'
).
each
(
function
(
d
,
i
){
var
unselectShape
=
(
this
.
nodeName
===
'circle'
)
?
unselectPoint
:
unselectBar
if
(
typeof
indices
===
'undefined'
||
indices
.
indexOf
(
i
)
>=
0
)
{
if
(
__data_selection_isselectable
(
d
)
&&
(
__data_selection_grouped
||
typeof
ids
===
'undefined'
||
ids
.
indexOf
(
d
.
id
)
>=
0
))
{
if
(
isUndefined
(
indices
)
||
indices
.
indexOf
(
i
)
>=
0
)
{
if
(
__data_selection_isselectable
(
d
)
&&
(
__data_selection_grouped
||
isUndefined
(
ids
)
||
ids
.
indexOf
(
d
.
id
)
>=
0
))
{
unselectShape
(
d3
.
select
(
this
).
classed
(
'_s_'
,
false
),
d
,
i
)
}
}
...
...
@@ -1596,30 +1596,30 @@
}
c3
.
groups
=
function
(
groups
)
{
if
(
typeof
groups
===
'undefined'
)
return
__data_groups
if
(
isUndefined
(
groups
)
)
return
__data_groups
__data_groups
=
groups
redraw
(
true
,
true
,
true
)
return
__data_groups
}
c3
.
regions
=
function
(
regions
)
{
if
(
typeof
regions
===
'undefined'
)
return
__regions
if
(
isUndefined
(
regions
)
)
return
__regions
__regions
=
regions
redraw
(
true
,
true
,
true
)
return
__regions
}
c3
.
regions
.
add
=
function
(
regions
)
{
if
(
typeof
regions
===
'undefined'
)
return
__regions
if
(
isUndefined
(
regions
)
)
return
__regions
__regions
=
__regions
.
concat
(
regions
)
redraw
(
true
,
true
,
true
)
return
__regions
}
c3
.
regions
.
remove
=
function
(
classes
,
options
)
{
var
regionClasses
=
[].
concat
(
classes
),
options
=
typeof
options
!==
'undefined'
?
options
:
{}
options
=
isDefined
(
options
)
?
options
:
{}
regionClasses
.
forEach
(
function
(
cls
){
var
regions
=
d3
.
selectAll
(
'.'
+
cls
)
if
(
typeof
options
.
duration
!==
'undefined'
)
{
if
(
isDefined
(
options
.
duration
)
)
{
regions
=
regions
.
transition
().
duration
(
options
.
duration
).
style
(
'fill-opacity'
,
0
)
}
regions
.
remove
()
...
...
@@ -1632,7 +1632,7 @@
c3
.
data
.
get
=
function
(
id
)
{
var
target
=
c3
.
data
.
getAsTarget
(
id
)
return
typeof
target
!==
'undefined'
?
target
.
values
.
map
(
function
(
d
){
return
d
.
value
})
:
undefined
return
isDefined
(
target
)
?
target
.
values
.
map
(
function
(
d
){
return
d
.
value
})
:
undefined
}
c3
.
data
.
getAsTarget
=
function
(
id
)
{
var
targets
=
getTargets
(
function
(
d
){
return
d
.
id
==
id
})
...
...
@@ -1800,4 +1800,11 @@
return
axis
}
function
isUndefined
(
v
)
{
return
typeof
v
===
'undefined'
}
function
isDefined
(
v
)
{
return
typeof
v
!==
'undefined'
}
})(
window
)
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