Showing posts with label graphing. Show all posts
Showing posts with label graphing. Show all posts

Friday, June 15, 2018

OresmeKit initial release: plotting for GNUstep and Cocoa

Finally a public release of OresmeKit.
Started many years ago, it has finally come the moment for a first public release, since I put together even a first draft of documentation. Stay tuned for improvements and new graph types.

Oresme is useful for plotting and graphing data both native on Cocoa/MacOS as on GNUstep.

OresmeKit is a framework which provides NSView subclasses that can display data. It is useful to easily embed charts and graphs in your applications, e.g. monitoring apps, dashboards and such.
OresmeKit supports both GNUstep and Cocoa/MacOS.

An initial API Documentation is also available as well as two example in the SVN repository.







Thursday, April 03, 2014

Graphs: Improved Grid and labels

Lots of new stuff in OresmeKit, the graphing toolkit for GNUstep and Mac! As an Example, an advanced dashboard based on DataBasin that displays the system load of Salesforce.com. It is not generally available yet, but I hope it will be!

Grid-sizing is now selectable so it gets spaced in 1K or 1M intervals (depending on the data-range available), like it is used in both screenshots in this example.

 - (void)setYAxisGridSizing:(OKGridSizing)sizing;

Can take now: OKGridConstantSize, OKGridKiloMega

Also, one can decide to draw Just the label of the minimum and maximum value or a label for every grid:

- (void)setYAxisLabelStyle:(OKLabelStyle)style;

Can take:  OKNoLabels, OKMinMaxLabels, OKAllLabels

1000-unit Grid



To complement this kind of visualization, a new kind of Label formatting can be used. In the example above, the numbers are plain, 10.000 is written as such, in the example below, it is formatted as 10K, if we were using 10.000.000, it would me 10M

1000 - grid with K formatting

Saturday, November 23, 2013

Graphos 0.5 released

The GNUstep Application Project announced a new release of its vector drawing application, Graphos on Oct 15th.

Improved text object and handling, improved selection handling (e.g. for multiple objects that are group selected) and many other bugs. The format is 0.4 compatibile, although text object might be placed differently if loaded from old files, due to the old bug.

Thursday, September 08, 2011

Oresme, plotting for GNUstep

Parabola
I started creating OresmeKit, a plotting and charting framework for Objective-C, GNUstep (and Cocoa/Mac). I had the idea since quite some time, but finally started working on it. I know others had sketches on the subject too, but at the end one does need to start somewhere. The Kit will offer custom Views to be embedded inside your application to plot data. The goal is to have simple setup possible. Plotting is a complex art which can be tweaked quite a bit and which can lead to interesting mathematical computations, but let's start with something simple and easily usable, or the design will never go beyond the drawing board.
sinc(x)
The first component is a Cartesian plotting: two X and Y array need to be provided for abscissa and ordinata values. The view can be set to display different X/Y ranges, the Quadrant can be selected and a "centered" mode is available to automatically set the Origo in the center. The View live-resizes and the plot colors can be set. Currently there are no optimizations of any kind, but for simple graphs it works quite well, as the example application shows. Along with the Framework I develop and release also examples which serve the dual-purpose of testing the Kit and providing a starting point for other developers who want to use OresmeKit.

In the screenshots, the example application plotting a parabola  and the plot of the sinc(x) function.


Why OresmeKit? In honour of Nicolas Oresme the antique philosopher who thought about coordinates long before Cartesius. Because Cartesius was too predictable as a name and too tied to X-Y plotting, while OresmeKit shall support more chart types in the future. What's next? I plan on adding some more features to the Cartesian drawing view first. Then typical charting views: bars, lines, pies... At some point some optimization and computation will be available, since otherwise plotting of large datasets will be unbearably slow.

OresmeKit and its examples are available in GAP and are yet unreleased, check the CVS repository.