insightjs

1.4.0 • Public • Published

InsightJS Travis Results

InsightJS is a JavaScript data aggregation and visualization library that allows you to quickly load and find patterns in datasets. Given a data set, InsightJS can group the records across the dimensions of the data to quickly aggregate and provide statistics on the data.

Version 1.4.0 (08-Jan-2015)

  • Library changes:

    • Added grouping to Simple Chart builders
    • Added parameter to insight.Legend constructor to allow a chosen series to be omitted from the legend
    • Added Series title truncation in insight.Legend
  • Issues fixed:

    • Fixed bug where Legend is cut off if a series title is too long

Version 1.3.0 (18-Nov-2014)

  • Library changes:
    • Charts can now be styled using CSS
    • Added Simple Chart builders that produce charts with default configurations

Version 1.2.1 (04-Nov-2014)

  • Library changes:
    • Improved documentation for working with groupings.
    • Updated Grouping calculations to improve consistency
      • Grouping.count() stores total count in value.propertyName.totalCount rather than value.propertyName.Total
      • Grouping.mean() stores mean in value.propertyName.mean rather than value.propertyName.Average
      • Grouping.sum() stores sum in value.propertyName.sum rather than value.propertyName.Sum
    • Removed insight.Chart.title
    • Added insight.Series.title
    • Updated library to work with crossfilter to 1.3.11
    • Added utility, insight.conversion, for converting arff data to json data

Issues fixed:

  • insight.DataSet.group function ignored any filter already applied on the DataSet.

Version 1.2.0 (07-Oct-2014)

  • Library changes:

    • Added Chart.titlePadding, to configure the distance between the chart title and plot area.
    • Added Axis.tickWidth and Axis.tickColor to configure the appearance of axis tick marks. Defaults are taken from the Theme.axisStyle.tickLineColor and Theme.axis.tickLineWidth respectively.
    • Added BarSeries as a common base class between RowSeries and ColumnSeries. BarSeries should not be initialized directly, but contains methods used in both RowSeries and ColumnSeries.
    • Added manual axis domains. Use Axis.axisRange(min, max) to set the axis range to a custom range.
    • Renaming
      • insight.Axis.axisLabelColor => insight.Axis.axisTitleColor
      • insight.Axis.axisLabelFont => insight.Axis.axisTitleFont
      • insight.Axis.label => insight.Axis.title
      • insight.Theme.axisStyle.showGridlines => insight.Theme.axisStyle.shouldShowGridlines
      • insight.Theme.axisStyle.axisLabelFont => insight.Theme.axisStyle.axisTitleFont
      • insight.Theme.axisStyle.axisLabelColor => insight.Theme.axisStyle.axisTitleColor
      • insight.Theme.seriesStyle.showPoints => insight.Theme.seriesStyle.shouldShowPoints
      • insight.Formatters => insight.formatters.
      • insight.Scales.Linear => insight.scales.linear
      • insight.Scales.Ordinal => insight.scales.ordinal
      • insight.Scales.Time => insight.scales.time
      • insight.Constants => insight.constants
      • insight.Utils => insight.utils
      • insight.correlation.fromDataSet => insight.correlation.fromDataProvider
  • Issues fixed:

    • Date axis tick labels were jumping on interactive charts
    • Charts were not able to be drawn with no data

Getting Started

Using InsightJS requires the following libraries:

InsightJS is also compatible with RequireJS.

Include the required libraries and InsightJS.

Load a dataset and start analyzing and creating charts!

<link rel="stylesheet" href="insight.min.css">

<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/crossfilter/1.3.7/crossfilter.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/insightjs/1.2.0/insight.min.js"></script>
d3.json('appstore.json', function(data)
  {
    var dataset = new insight.DataSet(data);
    
    var genreGroup = dataset.group('genre', function(d)
    {
        return d.primaryGenreName;
    });
    
    var chart = new insight.Chart('AppGenres', '#chart')
        .width(400)
        .height(350)
        .title('Genres');
 
    var x = new insight.Axis('Genre', insight.scales.ordinal)
             .tickLabelOrientation('tb');
 
    var y = new insight.Axis('No. Apps', insight.scales.linear);
    
    chart.yAxis(y);
    chart.xAxis(x);
 
    var columns = new insight.ColumnSeries('columns', genreGroup , x, y)
                             .valueFunction(function(d){
                                    return d.value.Count;
                                });
    chart.series([columns]);
    
    chart.draw();
});

Information

License

InsightJS is licensed under the MIT License

Package Sidebar

Install

npm i insightjs

Weekly Downloads

17

Version

1.4.0

License

MIT

Last publish

Collaborators

  • stavrakakis
  • tpkelly
  • niksoper
  • mdunsdon
  • tylerferguson