Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

graph3d.js enhancements #370

Open
dlaliberte opened this issue Jun 12, 2018 · 1 comment
Open

graph3d.js enhancements #370

dlaliberte opened this issue Jun 12, 2018 · 1 comment

Comments

@dlaliberte
Copy link

I have a substantial set of changes to graph3d.js that I am hoping someone is interested in. I made these changes to better support the functionality I needed for an internal project. I know this is a few years late, since this library has been frozen for 4 years and new development is happening elsewhere. But for anyone else wanting to continue leveraging the Google Charts API, my changes will be useful. This may also be useful for the new version of this library.

By the way, I expect that the Google Charts code will be open-sourced at some point, though I can't say when. Until then, I expect Google will continue servicing requests for the current version as it is updated, and each additional frozen version.

Here is the summary of enhancements to graph3d.js I've made:

  • Change axis ticks and title positioning to display better with more camera angles.
  • Hide axes that are invisible due to flat perspective and camera angle.
  • Draw grid on x, y, and z axis planes.
  • Merge functions for dots and lines, with connectDots option.
  • Generalize projections to apply to all three axis planes.
  • Draw dots on projected axis planes, and connect if connectDots.
  • Add 'series' role, to allow multiple chart types (styles) in the same chart.
  • Add 'role' for 'color' and 'size', to allow values for both.
  • Add 'filter' role to allow the column for filtering/animation to be specified.
  • Add options for color and size, min and max. Replaces value min and max.
  • Add options to use z for color and/or size.
  • Make showTooltips option take a function.
  • Add 'click' event handler.
  • For 'mouse move' handling, check whether camera moved
  • Add opacity option.
  • For shadow under surface, use the same color as the top, but darker.
  • Fix all the examples to use gstatic.com/charts/loader.js.
  • Whitespace.
@Zaijo
Copy link

Zaijo commented Jun 13, 2018

Thanks. I keep using this version in my project https://github.com/zaijo/history but without 3D graphs, so I'll not be able to make use of these enhancements, but thanks for sharing that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants