Giter Club home page Giter Club logo

gral's People

Contributors

eseifert avatar pschwede avatar seifertm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gral's Issues

Data sources aren't renderered and don't show up in legend

Data sources which are added/removed using the Plot.add() or Plot.remove() methods don't get the default renderers in XYPlot. They are also not shown on/removed from the legend.

Imported from trac ticket 24, created by eseifert on 11-24-2010 at 02:03, last modified: 11-24-2010 at 02:06

Mapping of added data sources is broken

If a data source gets added after creating a plot its columns don't get mapped at all and the data source isn't displayed anymore.

Imported from trac ticket 32, created by eseifert on 04-16-2011 at 16:02, last modified: 04-16-2011 at 16:05

Relative sizes

All sizes, but especially font sizes, should be set relative to the size of a standard font size (like "em" in typography)

Imported from trac ticket #3, created by eseifert on 05-23-2010 at 14:11, last modified: 01-24-2014 at 14:04

More fine-grained data change events

Currently, it is only possible to receive general change events from data sources. This may require additional filtering taking place at different listeners.

To avoid redundant calls, the respective data sources should invoke more specific methods depending on the type of the data change. Adding data for example could invoke dataAdded, while changing an existing value would call dataUpdated.

Imported from trac ticket 33, created by mseifert on 04-16-2011 at 17:08, last modified: 04-17-2011 at 13:26

Assigning data sources to secondary axes does not work

At the moment there's no way to assign data sources to certain axes (e.g. secondary axes in XYPlot). There should be a method, method parameter or flag to tell which which dimension (i.e. column in a data source) should be mapped which axis.

Imported from trac ticket 31, created by eseifert on 04-15-2011 at 23:21, last modified: 04-16-2011 at 12:49

Add support for multiple data sources to BarPlot

BarPlot instances should accept multiple data sources. They could be displayed as parallel bars or as stacked bars.

Imported from trac ticket 17, created by eseifert on 07-20-2010 at 00:42, last modified: 07-20-2010 at 00:42

Allow adding/removing data sources to plots

It should be possible to add new DataSource objects to a plot instance after it has been created. Consequently, it should to allowed to remove existing DataSource objects from a plot.

Imported from trac ticket 15, created by eseifert on 07-20-2010 at 00:38, last modified: 07-20-2010 at 17:49

Implement legends for pie plots

At the moment pie plots can't display a legend. This is caused by the current architecture: legends can't display a name for values, but only for the different data sources assigned to the plot.

Two steps are necessary to implement this feature:

  1. A way to store labels for data values has to be found. This could be done by storing an additional column with labels in the data source, or by just using the data column as labels in the legend.

  2. A custom implementation of legend has to be added to pie plot that will display the labels.

    Imported from trac ticket #50, created by eseifert on 11-27-2011 at 15:23, last modified: 01-21-2012 at 20:54

Build on Mac OS X

The current build fails on Mac OS X because it assumes that a Sun/Oracle? JDK is in use.

The attached patch alters the build in the following ways:

  • add a macosx profile which targets the Apple JDK (use classes.jar instead of rt.jar);
  • move the proguard phase into a profile; and
  • attach sources and apidocs by default.

so to get a compressed/obfuscated build you would need to do

$ mvn -Pproguard package

and to get the same on a Mac OS X system

$ mvn -Pmacosx,proguard package

Imported from trac ticket 44, created by ianp on 05-31-2011 at 15:09, last modified: 05-31-2011 t 17:37

Add new configuration system

A new way for configuring plots should be added:
Additionally to adjusting the settings for each element there shuld be a way to pass a single Map which contains the visual properties for the plot. This would be a kind of stylesheet and could be shared across several plots.

Imported from trac ticket 9, created by eseifert on 05-29-2010 at 18:19, last modified: 05-29-2010 at 18:19

Label support for point renderers

At the moment data values can be displayed in plots like XYPlot or BarPlot. However, sometimes it may be desirable to display other values or labels next to the data points.

A new setting for a label column should be added to point renderers.

For text labels a way for storing texts must be found (see #49).

Imported from trac ticket #51, created by eseifert on 11-27-2011 at 15:31, last modified: 11-27-2011 at 16:52

Add support for JDBC data sources

GRAL should be able to import data from JDBC data sources. An JDBC compatible data source should be implemented which can be used in plots.
Additionally a simple buffering scheme could be implemented to avoid unnecessary SQL queries.

Imported from trac ticket 27, created by eseifert on 02-19-2011 at 21:22, last modified: 02-19-2011 at 21:27

Axes don't draw tick marks of custom ticks

Currently, there is a bug that prevents tick marks of custom ticks to be drawn on axes.

Imported from trac ticket 40, created by eseifert on 04-26-2011 at 14:24, last modified: 04-26-2011 at 14:27

Automatic selection of tick spacing

There should be an option to enable automatic selection of tick spacing in axes.

Imported from trac ticket #1, created by eseifert on 05-23-2010 at 14:06, last modified: 04-27-2013 at 15:51

BitmapWriter does not allow setting rendering hints for the drawn image

BitmapWriter.write(Drawable, OutputStream, double, double, double, double) creates a BufferedImage, retrieves a Graphics2D from it and draws the Drawable into the image. However, there is currently no way of setting rendering hints for the Graphics2D, so all drawables will be aliased.

Thanks to rpet for his error report that disclosed this issue.

Exported bitmap images have wrong size

The plot in exported bitmap images is of size 0 when the plot hasn't been sized before writing. The bitmap image itself has correct size but all elements of the the plot are located at (0,0).

Imported from trac ticket 29, created by eseifert on 04-15-2011 at 15:36, last modified: 04-15-2011 at 22:48

More interactions for InteractivePanel

InteractivePanel should get more interactive. Examples:

  • allow zooming with click, lasso, or by mouse wheel

  • Set scale of axes.

    Imported from trac ticket #4, created by eseifert on 05-23-2010 at 14:14, last modified: 05-30-2010 at 18:47

Add more plot types

Add more plot types:

  • multiple axis plots

  • circular plots

  • contour plots

  • etc.

    Imported from trac ticket 5, created by eseifert on 05-23-2010 at 14:16, last modified: 12-10-2013 at 16:25

Lazy computation of statistical data

Just like more complex computations like median or mean, all other statistical data that is not needed to draw a graph should be calculated on-demand.

Imported from trac ticket 38, created by mseifert on 04-17-2011 at 13:24, last modified: 04-22-2011 at 15:49

Add clipping support

It should be possible to clip the plotted data to specific shape, e.g. to the plot area. This way data doesn't overlap with ticks or label outside the plot area.

Imported from trac ticket 21, created by eseifert on 10-22-2010 at 14:56, last modified: 10-22-2010 at 19:18

Plot painting hangs with logarithmic axis

Applying a logarithmic scale to the y-axis of the HistrogramPlot example causes GRAL to hang.

Imported from trac ticket 41, created by eseifert on 05-10-2011 at 16:12, last modified: 05-10-2011 at 16:19

Add support for large data sets

It should be possible to display large sets of data, e.g. over 100,000 data points. At the moment all data is loaded into memory. The data that is loaded to memory and that is displayed will have to be reduced.

One possibility is to query ranges. Changes the data source interface may be necessary.

Redundant update of statistics data

The current implementation of the Statistics class is very inefficient. When populating a DataTable by adding rows one by one, the whole statistics data is erased and recalculated. This is especially an issue when dealing with larger data sets, like the ScatterPlot example does.

Imported from trac ticket 36, created by mseifert on 04-16-2011 at 21:18, last modified: 04-17-2011 at 13:26

Support arbitrary data types in data sources

At the moment DataSource is restricted to types that are derived from Number, which is sufficient in most cases. However, GRAL should be able to handle more diverse data in future.

Advantages:

  • Ability to store strings for labels, etc.
  • Improved handling of diverse data from external data sources, e.g. CSV files, or databases accessed via JDBC.

Disadvantages:

  • Output of DataSource.get(int,int) method will get more difficult to use, i.e. casting will be necessary.

  • Sorting of columns may get difficult.

    Imported from trac ticket #49, created by eseifert on 11-27-2011 at 15:16, last modified: 11-27-2011 at 15:31

Add UML to documentation

There should be class diagrams in documentation.

Imported from trac ticket 11, created by eseifert on 05-29-2010 at 18:23, last modified: 05-29-2010 at 18:23

Maven repository

Any plan to make GRAL available in a maven repository?

Imported from trac ticket 28, created by Julien on 03-08-2011 at 23:18, last modified: 06-01-2013 at 18:54

Trailing ticks are not drawn

Sometimes ticks (major as well as minor) at the end of axes aren't drawn. This is probably caused by rounding erros.

Imported from trac ticket #6, created by eseifert on 05-23-2010 at 14:25, last modified: 07-25-2010 at 21:55

Axis with swapped direction breaks dragging

Dragging the plot in an InteractivePanel does not work as intended when an axis renderer has the SHAPE_DIRECTION_SWAPPED enabled. The dragging direction is also swapped then. Maybe this needs to be handled in a special case.

Imported from trac ticket 18, created by eseifert on 07-28-2010 at 22:13, last modified: 07-28-2010 at 22:48

Broken user interaction in MemoryUsage example

When trying to zoom in or out of the plot in the MemoryUsage example, the next data update causes the zoom to reset. The user can only see some flicker and nothing changed. The same occurs when trying to scroll in any direction.

To circumvent this, I suggest:

  • Disabling the scrolling, since the plot auto scrolls

  • Fix the zoom issue

    Imported from trac ticket 34, created by mseifert on 04-16-2011 at 20:59, last modified: 04-24-2011 at 15:02

Support for regressions

Add support for linear regressions.

Imported from trac ticket #12, created by eseifert on 05-29-2010 at 18:24, last modified: 04-17-2011 at 13:25

Nullpointerexception in DataTable/set

Problem: Calling method 'equals' causes a nullpointerexception in case 'old' hasn't been set before and therefore being null.

@SuppressWarnings("unchecked")
public <T> Comparable<T> set(int col, int row, Comparable<T> value) {
    Comparable<T> old;
    DataChangeEvent event = null;
    synchronized (this) {
        old = (Comparable<T>) get(col, row);
        if (!old.equals(value)) {
            rows.get(row)[col] = value;
            event = new DataChangeEvent(this, col, row, old, value);
        }
    }
    if (event != null) {
        notifyDataUpdated(event);
    }
    return old;
}

Solution:

@SuppressWarnings("unchecked")
public <T> Comparable<T> set(int col, int row, Comparable<T> value) {
    Comparable<T> old;
    DataChangeEvent event = null;
    synchronized (this) {
        old = (Comparable<T>) get(col, row);
        if (old == null || !old.equals(value)) {
            rows.get(row)[col] = value;
            event = new DataChangeEvent(this, col, row, old, value);
        }
    }
    if (event != null) {
        notifyDataUpdated(event);
    }
    return old;
}

Invalid minimum/maximum for plots without data sources

Creating a plot without data sources causes a NullPointerException because the minimum and maximum values for each axis return null.

Imported from trac ticket 35, created by eseifert on 04-16-2011 at 21:06, last modified: 04-23-2011 at 01:08

Changable visibility of data sources

The user should be able to change the visibility of data sources in a plot. This way, data can be added without rendering it or hiding/showing it at runtime.

Imported from trac ticket 14, created by mseifert on 07-19-2010 at 17:43, last modified: 07-19-2010 at 18:28

Support for secondary axes in XYPlot missing

XYPlot provides constants for secondary axes (XYPlot.AXIS_X2 and XYPlot.AXIS_Y2) but currently adding doesn't work correctly. The plot will display the axis but only on top left of the plot graphics.

The behavior is reproducible using the following code:

Axis y2 = new Axis(0, 24);
plot.setAxis(XYPlot.AXIS_Y2, y2);
LinearRenderer2D renderer = new LinearRenderer2D();
plot.setAxisRenderer(XYPlot.AXIS_Y2, renderer);

Support for secondary axis should be added

Imported from trac ticket 30, created by eseifert on 04-15-2011 at 22:45, last modified: 04-15-2011 at 22:47

Custom ticks do not disappear

If the minimum value of an axis is larger than the position of custom ticks, the ticks still get drawn at the axis' origin.

Gral hangs when plotting via source code Example

When trying to plot the following values in the Example source code app Gral hangs/takes a really long time to plot:

20.0,-125.8126857778749
40.0,-107.7508849908641
100.0,-83.87447716883071
200.0,-65.81265257035975
400.0,-47.75082318450755
1000.0,-23.891515853387343
2000.0,-6.8231791863293
2500.0,-3.009346236471874
3000.0,-1.254871041134651
4000.0,-0.25255845707859764
100000,-0.0013795951762697017
200000,-1.0055108990187697E-4

Imported from trac ticket 26, created by larkar on 12-01-2010 at 23:42, last modified: 01-16-2011 at 01:46

SizeablePointRenderer does not use settings internally

At the moment it isn't possible to use columns other than column 2 with SizeablePointRenderer. The setting SIZE_COLUMN is simply ignored.

Imported from trac ticket 20, created by eseifert on 10-10-2010 at 17:25, last modified: 10-10-2010 at 17:29

Gradle build faild

Hi,

I tried to build a jar file using gradle (2.3). However, it fails:

Download https://jcenter.bintray.com/com/google/code/google-collections/google-collect/snapshot->20080530/google-collect-snapshot-20080530.jar
Download https://jcenter.bintray.com/stax/stax-api/1.0.1/stax-api-1.0.1.jar
Download https://jcenter.bintray.com/org/sonatype/sisu/sisu-guice/2.9.1/sisu-guice-2.9.1-noaop.jar
Download https://jcenter.bintray.com/log4j/log4j/1.2.12/log4j-1.2.12.jar
Download https://jcenter.bintray.com/commons-logging/commons-logging-api/1.1/commons-logging->api-1.1.jar
fatal: Not a git repository (or any of the parent directories): .git
FAILURE: Build failed with an exception.

  • Where:
    Build file '/home/thorsten/Downloads/gral-master/build.gradle' line: 108
  • What went wrong:
    A problem occurred evaluating root project 'GRAL'.
    Process 'command 'git'' finished with non-zero exit value 128

The output --stacktrace is:

  • Exception is:
    org.gradle.api.GradleScriptException: A problem occurred evaluating root project 'GRAL'.
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:54)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:154)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:39)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:26)
    at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:59)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:492)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:86)
    at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:42)
    at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:129)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80)
    at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33)
    at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)
    at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)
    at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:169)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:237)
    at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:210)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
    at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:206)
    at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
    at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
    at org.gradle.launcher.Main.doAction(Main.java:33)
    at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)
    at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)
    at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
    Caused by: org.gradle.process.internal.ExecException: Process 'command 'git'' finished with non-zero exit value 128
    at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:365)
    at org.gradle.process.internal.DefaultExecAction.execute(DefaultExecAction.java:31)
    at org.gradle.api.internal.file.DefaultFileOperations.exec(DefaultFileOperations.java:151)
    at org.gradle.api.internal.project.AbstractProject.exec(AbstractProject.java:780)
    at org.gradle.groovy.scripts.DefaultScript.exec(DefaultScript.java:201)
    at org.gradle.api.Script$exec$0.callCurrent(Unknown Source)
    at build_7ywaf999q0ful94t8s3nkopek.getVersionString(/home/thorsten/Downloads/gral-master/build.gradle:108)
    at build_7ywaf999q0ful94t8s3nkopek$_run_closure1.doCall(/home/thorsten/Downloads/gral-master/build.gradle:3)
    at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:67)
    at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:130)
    at org.gradle.util.ConfigureUtil.configure(ConfigureUtil.java:91)
    at org.gradle.api.internal.project.AbstractProject.configure(AbstractProject.java:812)
    at org.gradle.api.internal.project.AbstractProject.configure(AbstractProject.java:817)
    at org.gradle.api.internal.project.AbstractProject.allprojects(AbstractProject.java:804)
    at org.gradle.api.internal.BeanDynamicObject$MetaClassAdapter.invokeMethod(BeanDynamicObject.java:225)
    at org.gradle.api.internal.BeanDynamicObject.invokeMethod(BeanDynamicObject.java:129)
    at org.gradle.api.internal.CompositeDynamicObject.invokeMethod(CompositeDynamicObject.java:147)
    at org.gradle.groovy.scripts.BasicScript.methodMissing(BasicScript.java:79)
    at build_7ywaf999q0ful94t8s3nkopek.run(/home/thorsten/Downloads/gral-master/build.gradle:1)
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:52)
    ... 32 more

The output of --debug is:

[...]
15:14:32.782 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: STARTING
15:14:32.783 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Waiting until process started: command 'git'.
15:14:32.788 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: STARTED
15:14:32.789 [DEBUG] [org.gradle.process.internal.ExecHandleRunner] waiting until streams are handled...
15:14:32.789 [INFO] [org.gradle.process.internal.DefaultExecHandle] Successfully started process 'command 'git''
15:14:32.792 [ERROR] [system.err] fatal: Not a git repository (or any of the parent directories): .git
15:14:32.795 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Changing state to: FAILED
15:14:32.796 [DEBUG] [org.gradle.process.internal.DefaultExecHandle] Process 'command 'git'' finished with exit value 128 (state: FAILED)
15:14:32.798 [DEBUG] [org.gradle.configuration.project.BuildScriptProcessor] Timing: Running the build script took 1.349 secs
15:14:32.813 [ERROR] [org.gradle.BuildExceptionReporter]
15:14:32.813 [ERROR] [org.gradle.BuildExceptionReporter] FAILURE: Build failed with an exception.
15:14:32.814 [ERROR] [org.gradle.BuildExceptionReporter]
15:14:32.815 [ERROR] [org.gradle.BuildExceptionReporter] * Where:
15:14:32.815 [ERROR] [org.gradle.BuildExceptionReporter] Build file '/home/thorsten/Downloads/gral-master/build.gradle' line: 108
15:14:32.815 [ERROR] [org.gradle.BuildExceptionReporter]
15:14:32.816 [ERROR] [org.gradle.BuildExceptionReporter] * What went wrong:
15:14:32.816 [ERROR] [org.gradle.BuildExceptionReporter] A problem occurred evaluating root project 'GRAL'.
15:14:32.817 [ERROR] [org.gradle.BuildExceptionReporter] > Process 'command 'git'' finished with non-zero exit value 128
15:14:32.817 [ERROR] [org.gradle.BuildExceptionReporter]
15:14:32.817 [ERROR] [org.gradle.BuildExceptionReporter] * Try:
15:14:32.818 [ERROR] [org.gradle.BuildExceptionReporter] Run with --stacktrace option to get the stack trace.
15:14:32.819 [LIFECYCLE] [org.gradle.BuildResultLogger]
15:14:32.820 [LIFECYCLE] [org.gradle.BuildResultLogger] BUILD FAILED
15:14:32.821 [LIFECYCLE] [org.gradle.BuildResultLogger]
15:14:32.822 [LIFECYCLE] [org.gradle.BuildResultLogger] Total time: 3.922 secs
15:14:32.825 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on buildscript class cache for settings file '/home/thorsten/Downloads/gral-master/settings.gradle' (/home/>thorsten/.gradle/caches/2.3/scripts/settings_9sdx9cd1l1b5yi58opf1ubpx0/SettingsScript/buildscript).
15:14:32.826 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on no_buildscript class cache for settings file '/home/thorsten/Downloads/gral-master/settings.gradle' (/home/>thorsten/.gradle/caches/2.3/scripts/settings_9sdx9cd1l1b5yi58opf1ubpx0/SettingsScript/no_buildscript).
[...]

Add 3D plots

Add support for three-dimensional plots, e.g. 3d bar plot, 3d pie plot, or 3d scatter plot

Navigation doesn't work correctly after setting new axis renderer

When a new axis renderer (e.g. LinearRenderer2D instead of LogarithmicRenderer2D) is set on a plot in an InteractivePanel, panning, zooming or resetting the view doesn't work correctly.

Imported from trac ticket 43, created by eseifert on 05-11-2011 at 17:26, last modified: 04-29-2013 at 19:47

Missing settings for fonts

Most text elements in GRAL are lacking a way to set a font.

Imported from trac ticket 39, created by eseifert on 04-24-2011 at 17:54, last modified: 04-24-2011 at 18:02

Improvement of statistical data

The statistics package in the gral core could need partial reworks and optimisations. This ticket is a summary for these tasks.

Imported from trac ticket 37, created by mseifert on 04-17-2011 at 13:18, last modified: 04-17-2011 at 13:28

Implement categories

Add category support to axis instead of regular ticks.

Imported from trac ticket 2, created by eseifert on 05-23-2010 at 14:08, last modified: 01-20-2014 at 16:35

API review

Review and simplify API by implementing more examples. Write tests were necessary.

Imported from trac ticket #8, created by eseifert on 05-23-2010 at 16:51, last modified: 01-24-2014 at 14:51

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.