为什么我的 D3 svg 没有显示在屏幕上?
Why is my D3 svg not showing on the screen?
这是我的代码!我正在使用 angular 和 d3 库制作一个简单的形状,但屏幕上没有任何显示。
饼图 TS 文件:
@Component({
selector: 'pie-chart',
templateUrl: './pie-chart.component.html',
styleUrls: ['./pie-chart.component.css'],
})
export class PieChartComponent {
svg = d3
.select('#canvasarea')
.append('svg')
.attr('width', 400)
.attr('height', 100);
circle = this.svg
.append('circle')
.attr('cx', 200)
.attr('cy', 200)
.attr('r', 50)
.attr('fill', 'blue');
}
饼图HTML文件:
<div id="canvasarea"></div>
应用-component.html:
<pie-chart></pie-chart>
如上所述,您确实需要添加一个具有 r 属性的半径。而且您还需要在 angular 组件中呈现视图以添加 svg 并对其进行操作
import { AfterViewInit, Component } from '@angular/core';
import * as d3 from 'd3';
@Component({
selector: 'pie-chart',
templateUrl: './pie-chart.component.html',
styleUrls: ['./pie-chart.component.css'],
})
export class PieChartComponent implements AfterViewInit {
public svg: any = null;
constructor() { }
ngAfterViewInit(): void {
this.svg = d3
.select('#canvasarea')
.append('svg')
.attr('width', 400)
.attr('height', 100);
this.svg
.append('circle')
.attr('cx', 50)
.attr('cy', 50)
.attr('r', 20)
.style('fill', 'blue');
}
}
这是我的代码!我正在使用 angular 和 d3 库制作一个简单的形状,但屏幕上没有任何显示。
饼图 TS 文件:
@Component({
selector: 'pie-chart',
templateUrl: './pie-chart.component.html',
styleUrls: ['./pie-chart.component.css'],
})
export class PieChartComponent {
svg = d3
.select('#canvasarea')
.append('svg')
.attr('width', 400)
.attr('height', 100);
circle = this.svg
.append('circle')
.attr('cx', 200)
.attr('cy', 200)
.attr('r', 50)
.attr('fill', 'blue');
}
饼图HTML文件:
<div id="canvasarea"></div>
应用-component.html:
<pie-chart></pie-chart>
如上所述,您确实需要添加一个具有 r 属性的半径。而且您还需要在 angular 组件中呈现视图以添加 svg 并对其进行操作
import { AfterViewInit, Component } from '@angular/core';
import * as d3 from 'd3';
@Component({
selector: 'pie-chart',
templateUrl: './pie-chart.component.html',
styleUrls: ['./pie-chart.component.css'],
})
export class PieChartComponent implements AfterViewInit {
public svg: any = null;
constructor() { }
ngAfterViewInit(): void {
this.svg = d3
.select('#canvasarea')
.append('svg')
.attr('width', 400)
.attr('height', 100);
this.svg
.append('circle')
.attr('cx', 50)
.attr('cy', 50)
.attr('r', 20)
.style('fill', 'blue');
}
}