ArrayFire: graphics/plot2d.cpp (original) (raw)

#include <math.h>

#include

using namespace af;

static const int ITERATIONS = 50;

static const float PRECISION = 1.0f / ITERATIONS;

int main(int, char**) {

try {

af::Window myWindow(800, 800, "2D Plot example: ArrayFire");

int sign = 1;

array noise = randn(X.dims(0)) / 5.f;

myWindow.grid(2, 1);

for (double val = 0; !myWindow.close();) {

Y = sin(X);

myWindow(0, 0).plot(X, Y);

X = X + PRECISION * float(sign);

val += PRECISION * float(sign);

sign = -1;

} else if (val < -af::Pi) {

sign = 1;

}

}

fprintf(stderr, "%s\n", e.what());

throw;

}

return 0;

}

Window object to render af::arrays.

A multi dimensional data container.

dim4 dims() const

Get dimensions of the array.

An ArrayFire exception class.

virtual const char * what() const

Returns an error message for the exception in a string format.

seq is used to create sequences for indexing af::array

void plot(const array &in, const char *const title=NULL)

Renders the input arrays as a 2D or 3D plot to the window.

void scatter(const array &in, const af::markerType marker=AF_MARKER_POINT, const char *const title=NULL)

Renders the input arrays as a 2D or 3D scatter-plot to the window.

bool close()

Check if window is marked for close.

void show()

This function swaps the background buffer to current view and polls for any key strokes while the win...

void grid(const int rows, const int cols)

Setup grid layout for multiview mode in a window.