import 'zone.js'; import 'reflect-metadata'; import { Component, enableProdMode, NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { ViserModule } from 'viser-ng'; import * as $ from 'jquery'; const DataSet = require('@antv/data-set'); const axis1Opts = { dataKey: 'x', grid: { lineStyle: { stroke: '#d9d9d9', lineWidth: 1, lineDash: [ 2, 2 ] } } }; const seriesOpts = { quickType: 'polygon', color: ['count', '#BAE7FF-#1890FF-#0050B3'], position: 'x*y', style: { lineWidth: 1, stroke: '#fff' } }; @Component({ selector: '#mount', template: `
` }) class AppComponent { forceFit: boolean= true; height: number = 400; data = []; axis1Opts = axis1Opts; seriesOpts = seriesOpts; constructor() { $.getJSON('/assets/data/heatmap-7.json', (sourceData) => { const ds = new DataSet({ state: { sizeEncoding: false } }); const dv = ds.createView().source(sourceData); dv.transform({ sizeByCount: '$state.sizeEncoding', type: 'bin.hexagon', fields: ['x', 'y'], bins: [10, 5], }); this.data = dv.rows; }); } } @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, ViserModule ], providers: [], bootstrap: [ AppComponent ] }) export default class AppModule { }