Socket
Socket
Sign inDemoInstall

@amcharts/amcharts4-ember

Package Overview
Dependencies
221
Maintainers
4
Versions
284
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @amcharts/amcharts4-ember

Ember add-on for amCharts 4


Version published
Weekly downloads
143
decreased by-1.38%
Maintainers
4
Created
Weekly downloads
 

Readme

Source

@amcharts/amcharts4-ember

Ember add-on for AmCharts 4

Installation

ember install @amcharts/amcharts4-ember

Usage

Add the amcharts4.files array to your EmberApp:

let app = new EmberApp(defaults, {
  amcharts4: {
    files: [

    ]
  }
});

Then inside of the files you should include the various files that you will be using (if you forget to include a file, you will get a runtime error telling you exactly which file you need to add):

let app = new EmberApp(defaults, {
  amcharts4: {
    files: [
      "charts",
      "themes/animated"
    ]
  }
});

Make sure that your template contains a <div> element for the chart:

<div id="chartdiv" style="width: 100%; height: 500px;"></div>

Lastly, import and use V4 like normal (make sure to use the didInsertElement and willDestroyElement methods):

import Component from "@ember/component";
import * as am4core from "@amcharts/amcharts4/core";
import * as am4charts from "@amcharts/amcharts4/charts";
import am4themes_animated from "@amcharts/amcharts4/themes/animated";

am4core.useTheme(am4themes_animated);

export default Component.extend({
  init() {
    this._super(...arguments);
    this.chart = null;
  },

  didInsertElement() {
    this._super(...arguments);

    let chart = am4core.create("chartdiv", am4charts.XYChart);
    chart.paddingRight = 20;

    let data = [];
    let visits = 10;
    for (let i = 1; i < 366; i++) {
      visits += Math.round((Math.random() < 0.5 ? 1 : -1) * Math.random() * 10);
      data.push({ date: new Date(2018, 0, i), name: "name" + i, value: visits });
    }

    chart.data = data;

    let dateAxis = chart.xAxes.push(new am4charts.DateAxis());
    dateAxis.renderer.grid.template.location = 0;

    let valueAxis = chart.yAxes.push(new am4charts.ValueAxis());
    valueAxis.tooltip.disabled = true;
    valueAxis.renderer.minWidth = 35;

    let series = chart.series.push(new am4charts.LineSeries());
    series.dataFields.dateX = "date";
    series.dataFields.valueY = "value";

    series.tooltipText = "{valueY.value}";
    chart.cursor = new am4charts.XYCursor();

    let scrollbarX = new am4charts.XYChartScrollbar();
    scrollbarX.series.push(series);
    chart.scrollbarX = scrollbarX;

    this.chart = chart;
  },

  willDestroyElement() {
    if (this.chart) {
      this.chart.dispose();
    }
    this._super(...arguments);
  }
});

Keywords

FAQs

Last updated on 21 Aug 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc