smart_arrays_sample_data 2.0.5

  • Readme
  • Changelog
  • Example
  • Installing
  • 78

Smart Arrays Sample Data #

What the package can do for you #

It is often the case that one needs sample data for testing software, for presentations and other purposes. This package computes one and two-dimensional arrays representing functions such a sine, cosine, and more.

Example #

The major API functionalities #

Each function is represented by its own class in this package. Examples:

  • Class sine1D to compute a sine wave with various parameters, including white noise to simulate measurement data.

  • Class sinc to compute a sine cardinal ("sinc") wave with various parameters..

  • Class XsinYcos2D to compute a 2D mixture of sine and linear components.

smart_arrays_base: Basic functions for 1D and 2D arrays

smart_arrays_numerics: Numerics with 1D and 2D arrays

smart_arrays_compress: Compress 1D and 2D arrays to a smaller size.

smart_arrays_dbstore: Stores 1D and 2D arrays along with metadata on the local device.

smart_arrays_plot_polyline: Plots 1D arrays as polyline along with axes and more.

smart_arrays_peaks: Detect peaks in 1D and 2D arrays.

smart_arrays_contour_finder: Contours the three-dimensional surface represented by the values f(x,y) of a matrix.

smart_arrays_lmfit: Fits (x, y) data given as arrays to a specified model function using the Levenberg-Marquardt algorithm.

smart_lorentz_gauss: Compute Lorentz-Gauss (pseudo-Voigt) line shapes.

smart_signal_processing: Fourier transform and more of arrays.

smart_dialogs: Easy-to-use dialogs in Web applications

Smart Arrays Sample Data #

Version history #

2.0.0 - 2019-09-14 First version available on pub.dev

2.0.1 - 2019-09-14 Example update

2.0.2 - 2019-09-14 Example update

2.0.3 - 2019-09-14 Renamed "getters" of the classes

2.0.4 - 2019-09-20 Added class LorentzGauss2D.

2.0.5 - 2019-09-20 Fixed exporting LorentzGauss2D.

example/example.dart

import 'dart:html';
import 'dart:convert';

import 'package:smart_arrays_sample_data/smart_arrays_sample_data.dart';
import 'package:smart_arrays_plot_polyline/smart_arrays_plot_polyline.dart';

/// Demonstrates the usage of the package 'smart_arrays_sample_data' by
/// computing and displaying two arrays (containing some periods of sin(x)
/// and a sin(x)/x).
main() {
  // compute 2 arrays with a sinc and a sine function, to be displayed later
  Sinc1D sinc1d = Sinc1D(1000, 100.0, 0.0, 8, 0.0);
  Sine1D sine1d = Sine1D(2000, 20.0, 0.0, 8, 0.0, 0.0);

  // get divs from 'example.html' (application and plot containers)
  DivElement appDiv = (querySelector("#app_div") as DivElement);
  DivElement plotDiv = (querySelector("#plot_div") as DivElement);

  // the plot will take all available space of [appDiv] in this example
  plotDiv.style
    ..width = "${appDiv.clientWidth}px"
    ..height = "${appDiv.clientHeight}px";

  // setup some polyline, axis and legend attributes
  List<Map<PyA, String>> plotAttr = [
    {PyA.YPOSITION_ZERO: "0.8"}, // rel. y position of the value 0
    {PyA.YPOSITION_ZERO: "0.8"}
  ];

  final String GREEK_PI = '\u03C0';
  Map<AxA, String> xaxisAttr = {
    AxA.PHYS_X_START: "0",
    AxA.PHYS_X_WIDTH: "8",
    AxA.LEGENDTEXT: "Number of periods (2*$GREEK_PI)"
  };

  Map<AxA, String> yaxisAttr = {AxA.LEGENDTEXT: "Function value ('intensity')"};
  Map<LegA, String> legendAttr = {
    LegA.TOP_TITLE: "Displays some arrays computed by 'smart_arrays_sample_data'",
    LegA.SUB_TITLES: json.encode(["100 * sin(x) / x", " 20 * sin(x)"]),
    LegA.X: "45",
    LegA.Y: "15"
  };

  // plot the arrays into [plotDiv]
  SimplePlot([sinc1d.array, sine1d.array], plotDiv, plotAttr, xaxisAttr,
      yaxisAttr, legendAttr, null);
}

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  smart_arrays_sample_data: ^2.0.5

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter pub get

Alternatively, your editor might support pub get or flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:smart_arrays_sample_data/smart_arrays_sample_data.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
57
Health:
Code health derived from static analysis. [more]
100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
100
Overall:
Weighted score of the above. [more]
78
Learn more about scoring.

We analyzed this package on Nov 15, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.6.0
  • pana: 0.12.21

Platforms

Detected platforms: Flutter, web, other

No platform restriction found in primary library package:smart_arrays_sample_data/smart_arrays_sample_data.dart.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.4.0 <3.0.0
build_runner ^1.6.2 1.7.2
build_web_compilers ^2.1.4 2.7.1
pedantic ^1.7.0 1.8.0+1
smart_arrays_numerics ^2.1.1 2.1.1
smart_arrays_plot_polyline ^2.0.11 2.2.1
smart_lorentz_gauss ^2.1.0 2.1.2
Transitive dependencies
_fe_analyzer_shared 1.0.0
analyzer 0.39.1
archive 2.0.11
args 1.5.2
async 2.4.0
bazel_worker 0.1.23
build 1.2.2
build_config 0.4.1+1
build_daemon 2.1.2
build_modules 2.7.0
build_resolvers 1.3.0
build_runner_core 4.2.0
built_collection 4.3.0
built_value 7.0.0
charcode 1.1.2
checked_yaml 1.0.2
code_builder 3.2.1
collection 1.14.12
convert 2.1.1
crypto 2.1.3
csslib 0.16.1
dart_style 1.3.3
fixnum 0.10.11
front_end 0.1.29
glob 1.2.0
graphs 0.2.0
html 0.14.0+3
http 0.12.0+2
http_multi_server 2.1.0
http_parser 3.1.3
io 0.3.3
js 0.6.1+1
json_annotation 3.0.0
kernel 0.3.29
logging 0.11.3+2
matcher 0.12.6
meta 1.1.8
mime 0.9.6+3
node_interop 1.0.3
node_io 1.0.1+2
package_config 1.1.0
package_resolver 1.0.10
path 1.6.4
pool 1.4.0
protobuf 1.0.1
pub_semver 1.4.2
pubspec_parse 0.1.5
quiver 2.1.2+1
scratch_space 0.0.4+1
shelf 0.7.5
shelf_web_socket 0.2.3
smart_arrays_base 2.1.0
smart_arrays_compress 2.1.0
smart_arrays_contour_finder 2.0.6
source_maps 0.10.8
source_span 1.5.5
stack_trace 1.9.3
stream_channel 2.0.0
stream_transform 0.0.20
string_scanner 1.0.5
term_glyph 1.1.0
timing 0.1.1+2
typed_data 1.1.6
watcher 0.9.7+12
web_socket_channel 1.1.0
yaml 2.2.0