рдореИрдВ рдХреЛрдгреАрдп 2 рдФрд░ D3.js рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдореИрдВ рдПрдХ рд▓рд╛рд▓ рдЖрдпрдд рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБред
рдпрд╣ рддрднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рдореИрдВ рд╕реНрдЯрд╛рдЗрд▓ рдХреЛ рд╕реНрдЯрд╛рдЗрд▓.рд╕реАрдПрд╕рдПрд╕ рдлрд╛рдЗрд▓ рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реВрдВред рдЗрд╕ рдкреНрд▓рдВрдХрд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
рдЬрдм рдореИрдВ рдЕрдкрдиреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдШрдЯрдХ styles: []
рдореЗрдВ рдбрд╛рд▓рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд▓рдВрдХрд░ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
рд╕реНрдЯреИрдХ рдУрд╡рд░рдлрд╝реНрд▓реЛ рдХрд╛ рд╕рдВрджрд░реНрдн рд▓реЗрдВред
import {Component} from 'angular2/core'
@Component({
selector: 'my-app',
providers: [],
styles: [`
/*this does not work*/
.bar {
fill: red;
}
`],
template: `
<div>
<svg class="chart"></svg>
</div>
`,
directives: []
})
export class App {
constructor() {}
ngOnInit() {
this.draw();
}
draw() {
let data = [{name: 'A', value: 1}];
let width = 400, height = 200;
let x = d3.scale.ordinal().rangeRoundBands([0, width]);
let y = d3.scale.linear().range([height, 0]);
let chart = d3.select(".chart")
.attr("width", width)
.attr("height", height)
.append("g");
x.domain(data.map(function(d) { return d.name; }));
y.domain([0, d3.max(data, function(d) { return d.value; })]);
chart.selectAll(".bar")
.data(data)
.enter().append("rect")
.attr("class", "bar")
.attr("x", function(d) { return x(d.name); })
.attr("y", function(d) { return y(d.value); })
.attr("height", function(d) { return height - y(d.value); })
.attr("width", x.rangeBand());
}
}
рд╡рд╣ рдбрд┐рдЬрд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рд╣реИред рдХреЛрдгреАрдп рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рд╡рд░реНрдЧ рдирд╛рдо рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдЬреЛрдбрд╝реЗ рдЧрдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдЙрди рдШрдЯрдХреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред
рдбреА3 рдПрдВрдЧреБрд▓рд░ рдЬреНрдЮрд╛рди рдХреЗ рдмрд┐рдирд╛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдПрдЪрдЯреАрдПрдордПрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдВрдЧреБрд▓рд░ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдПрдЪрдЯреАрдПрдордПрд▓ рдкрд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ HTML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдХреЛрдгреАрдп рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦрддрд╛ рд╣реИ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╣рд╛рдпрдХ рд╡рд░реНрдЧ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
encapsulation: ViewEncapsulation.None
рдХреЗ рд╕рд╛рде рдХреЛрдгреАрдп рдпрд╣ рдкреБрдирд░реНрд▓реЗрдЦрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо HTML рдХреЛ index.html
рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реИред
рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдЖрдк рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рд╢реИрдбреЛ рдкрд┐рдпрд░реНрд╕рд┐рдВрдЧ CSS рдХреЙрдореНрдмрд┐рдиреЗрдЯрд░ >>>
, /deep/
рдФрд░ ::shadow
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рднреА рджреЗрдЦреЗрдВ http://stackoverflow.com/a/36225709/217408
@zoechi рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж !! рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ!
рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, @zoechi рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ
рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреЗ рдХрд╛рд░рдг рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрдкрдиреЗ рдЖрдк рд▓реЙрдХ рд╣реЛ рдЧрдИ рд╣реИред
рдпрджрд┐ рдЖрдк рд╕рдорд╛рди рдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рджрд░реНрдЬ рдХрд░реЗрдВред
рд╣рдорд╛рд░реА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╡рд╛рд░реНрддрд╛рд▓рд╛рдк рд▓реЙрдХрд┐рдВрдЧ рдиреАрддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВред
_рдпрд╣ рдХреНрд░рд┐рдпрд╛ рдХрд┐рд╕реА рдмреЙрдЯ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХреА рдЧрдИ рд╣реИред_
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рд╡рд╣ рдбрд┐рдЬрд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рд╣реИред рдХреЛрдгреАрдп рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рд╡рд░реНрдЧ рдирд╛рдо рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдЬреЛрдбрд╝реЗ рдЧрдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдЙрди рдШрдЯрдХреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред
рдбреА3 рдПрдВрдЧреБрд▓рд░ рдЬреНрдЮрд╛рди рдХреЗ рдмрд┐рдирд╛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдПрдЪрдЯреАрдПрдордПрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдВрдЧреБрд▓рд░ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдПрдЪрдЯреАрдПрдордПрд▓ рдкрд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ HTML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдХреЛрдгреАрдп рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдирд╣реАрдВ рд▓рд┐рдЦрддрд╛ рд╣реИ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рд╣рд╛рдпрдХ рд╡рд░реНрдЧ рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред
encapsulation: ViewEncapsulation.None
рдХреЗ рд╕рд╛рде рдХреЛрдгреАрдп рдпрд╣ рдкреБрдирд░реНрд▓реЗрдЦрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо HTML рдХреЛindex.html
рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реИредрд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдЖрдк рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП рд╢реИрдбреЛ рдкрд┐рдпрд░реНрд╕рд┐рдВрдЧ CSS рдХреЙрдореНрдмрд┐рдиреЗрдЯрд░
>>>
,/deep/
рдФрд░::shadow
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рднреА рджреЗрдЦреЗрдВ http://stackoverflow.com/a/36225709/217408