Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
MUR Drupal
d3-library
Commits
542726c4
Commit
542726c4
authored
Dec 19, 2012
by
Mike Bostock
Browse files
Remove axis-multiples example.
Replaced by <
http://bl.ocks.org/1157787
>.
parent
6d27e13f
Changes
1
Hide whitespace changes
Inline
Side-by-side
examples/axis/axis-multiples.html
deleted
100644 → 0
View file @
6d27e13f
<!DOCTYPE html>
<meta
charset=
"utf-8"
>
<script
src=
"../../d3.js"
></script>
<style>
body
{
font
:
10px
sans-serif
;
margin
:
0
;
}
path
.line
{
fill
:
none
;
stroke
:
#666
;
stroke-width
:
1.5px
;
}
path
.area
{
fill
:
#e7e7e7
;
}
.axis
path
,
.axis
line
{
fill
:
none
;
stroke
:
#fff
;
shape-rendering
:
crispEdges
;
}
</style>
<body>
<script>
var
margin
=
{
top
:
20
,
right
:
20
,
bottom
:
20
,
left
:
20
},
width
=
960
-
margin
.
right
-
margin
.
left
,
height
=
140
-
margin
.
top
-
margin
.
bottom
,
parse
=
d3
.
time
.
format
(
"
%b %Y
"
).
parse
;
// Scales. Note the inverted range for the y-scale: bigger is up!
var
x
=
d3
.
time
.
scale
()
.
range
([
0
,
width
]);
var
y
=
d3
.
scale
.
linear
()
.
range
([
height
,
0
]);
// X-axis.
var
xAxis
=
d3
.
svg
.
axis
()
.
scale
(
x
)
.
tickSize
(
-
height
);
// An area generator, for the light fill.
var
area
=
d3
.
svg
.
area
()
.
interpolate
(
"
monotone
"
)
.
x
(
function
(
d
)
{
return
x
(
d
.
date
);
})
.
y0
(
height
)
.
y1
(
function
(
d
)
{
return
y
(
d
.
price
);
});
// A line generator, for the dark stroke.
var
line
=
d3
.
svg
.
line
()
.
interpolate
(
"
monotone
"
)
.
x
(
function
(
d
)
{
return
x
(
d
.
date
);
})
.
y
(
function
(
d
)
{
return
y
(
d
.
price
);
});
d3
.
csv
(
"
../data/stocks.csv
"
,
function
(
data
)
{
// Nest values by symbol.
var
symbols
=
d3
.
nest
()
.
key
(
function
(
d
)
{
return
d
.
symbol
;
})
.
entries
(
data
);
// Parse dates and numbers. We assume values are sorted by date.
// Also compute the maximum price per symbol, needed for the y-domain.
symbols
.
forEach
(
function
(
s
)
{
s
.
values
.
forEach
(
function
(
d
)
{
d
.
date
=
parse
(
d
.
date
);
d
.
price
=
+
d
.
price
;
});
s
.
maxPrice
=
d3
.
max
(
s
.
values
,
function
(
d
)
{
return
d
.
price
;
});
});
// Compute the minimum and maximum date across symbols.
x
.
domain
([
d3
.
min
(
symbols
,
function
(
d
)
{
return
d
.
values
[
0
].
date
;
}),
d3
.
max
(
symbols
,
function
(
d
)
{
return
d
.
values
[
d
.
values
.
length
-
1
].
date
;
})
]);
// Add an SVG element for each symbol, with the desired dimensions and margin.
var
svg
=
d3
.
select
(
"
body
"
).
selectAll
(
"
svg
"
)
.
data
(
symbols
)
.
enter
().
append
(
"
svg
"
)
.
attr
(
"
width
"
,
width
+
margin
.
left
+
margin
.
right
)
.
attr
(
"
height
"
,
height
+
margin
.
top
+
margin
.
bottom
)
.
append
(
"
g
"
)
.
attr
(
"
transform
"
,
"
translate(
"
+
margin
.
left
+
"
,
"
+
margin
.
top
+
"
)
"
);
// Add the area path elements. Note: the y-domain is set per element.
svg
.
append
(
"
path
"
)
.
attr
(
"
class
"
,
"
area
"
)
.
attr
(
"
d
"
,
function
(
d
)
{
y
.
domain
([
0
,
d
.
maxPrice
]);
return
area
(
d
.
values
);
});
// Add the x-axis.
svg
.
append
(
"
g
"
)
.
attr
(
"
class
"
,
"
x axis
"
)
.
attr
(
"
transform
"
,
"
translate(0,
"
+
height
+
"
)
"
)
.
call
(
xAxis
);
// Add the line path elements. Note: the y-domain is set per element.
svg
.
append
(
"
path
"
)
.
attr
(
"
class
"
,
"
line
"
)
.
attr
(
"
d
"
,
function
(
d
)
{
y
.
domain
([
0
,
d
.
maxPrice
]);
return
line
(
d
.
values
);
});
// Add a small label for the symbol name.
svg
.
append
(
"
text
"
)
.
attr
(
"
x
"
,
width
-
6
)
.
attr
(
"
y
"
,
height
-
6
)
.
attr
(
"
text-anchor
"
,
"
end
"
)
.
text
(
function
(
d
)
{
return
d
.
key
;
});
});
</script>
Write
Preview
Supports
Markdown
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