jtablesaw / plotly.java Goto Github PK
View Code? Open in Web Editor NEWA third-party Java wrapper for plotly.js
License: Apache License 2.0
A third-party Java wrapper for plotly.js
License: Apache License 2.0
Currently we support only the 3D scatter, but much of the support for other 3D types should be available.
the implementation was missing marker support, which has been added
This covers a list of API changes suggested in the tablesaw repo. See original description below and original issue: jtablesaw/tablesaw#716
I'm not sure what's left to do here that makes sense so a review is needed.
I would like to suggest some simple API changes to the jsplot-plotly classes which will slowly help in the direction proposed in issue jtablesaw/tablesaw#693. If these suggestions sound acceptable, I can work on a PR.
Figure.java : Add methods .setTraces(Trace[]), .setLayout(Layout) & .setEventHandlers().
Figure.java : Change methods buildContext(), plotFunction(), eventHandlerFunction to "protected" instead of "private" so that they can be overridden.
For all Plot classes in tech.tablesaw.plotly.api.*, extend the classes to Figure.java.
Make the constructor of Heatmap (tech.tablesaw.plotly.api) public.
For all *Plot classes create constructors with parameters that match the static create() methods of each class, with an added Layout object. The constructors would do the same as the static methods except that it would setXXX() the layout, trace and eventhandlers instead of creating a new Figure.
If these changes are made, then the following will be true :
a) It will not break the current API.
b) It will allow users of Tablesaw to set a custom Layout object for each of the Plot classes.
c) It will allow users of Tablesaw to take advantage of inheritance and create classes which extend the Plot classes and override the underlying methods, so that they can make enhancements or changes to the current implementation.
d) It will allow users of Tablesaw to contribute their enhancements to the Tablesaw project, but still use their custom enhancements and the latest Tablesaw release while waiting for the acceptance of the enhancements and a new release with the changes.
See old tablesaw issue: jtablesaw/tablesaw#615
Currently the project does not compile with Java 21. The dependency pebble
must be updated. With the update comes a change of the group id from com.mitchellbosecke
to io.pebbletemplates
. Changes must be applied to the pom.xml
as well as the class files using pebble
.
Pick an unimplemented plot type and implement it. Examples:
Cover Responsive, Autosize, and set.
Note: this may require fixing layout to handle sizes set as percents rather than pixels.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.