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 { }