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

ui: Render graphs with D3 directly, replacing use of NVD3 #18620

Closed
mrtracy opened this issue Sep 20, 2017 · 2 comments
Closed

ui: Render graphs with D3 directly, replacing use of NVD3 #18620

mrtracy opened this issue Sep 20, 2017 · 2 comments
Labels
A-webui-timeseries C-cleanup Tech debt, refactors, loose ends, etc. Solution not expected to significantly change behavior. no-issue-activity X-stale

Comments

@mrtracy
Copy link
Contributor

mrtracy commented Sep 20, 2017

We have used the NVD3 library to draw our metrics graphs since the creation of the Admin UI. However, we are rapidly outgrowing the restraints of this system:

NVD3 is a library meant to provide a reasonable level of graph utility for a wide array of use cases; we now need a more advanced level of graph utility for a narrower use case. Therefore, we should begin rendering our graphs using D3 directly; this will afford us greater control and understanding of the rendering process, allowing us to debug issues more effectively and add advanced features more easily.


EDIT 2019: Related issues.

Features this will directly or indirectly enable:

Bugs this will likely obselete (let's not repeat them, though):

@couchand
Copy link
Contributor

couchand commented Sep 20, 2017

I've broken down the major steps to replacing our use of NVD3 for the time series charts. This is where I'll be tracking the progress as I work on this:

  • general functionality
    • basic static charting
    • multiple series
    • legends
    • update on new data
    • sliding animation
    • historical data handling
    • timeseries data integration
    • react integration
  • scales
    • time scale
    • count scale
    • byte scale
    • duration scale
    • percentage scale
  • interactivity
    • hover tooltip
    • linked guidelines
    • legend filtering
    • resize on page size change
  • implementation
    • replace usages of each chart
    • remove nvd3 references
    • testing
  • polish
    • color schemes
    • scale testing and tweaking

@dianasaur323 dianasaur323 added this to the 1.2 milestone Sep 21, 2017
couchand added a commit to couchand/cockroach that referenced this issue Oct 23, 2017
This commit replaces our usage of NVD3 with a vanilla D3 implementation
of the same charts.  Closes cockroachdb#18620 and cockroachdb#18665 while we're at it.

Depends on D3v4, and currently uses a different (read, simpler) API than
our current charts, so can't (yet) actually be used on the dashboard.
couchand added a commit to couchand/cockroach that referenced this issue Dec 14, 2017
This is the last major functionality NVD3 is giving us (besides the
charts themselves).  Replacing it with our own will enable future
customization as well as make it easier to completely excise NVD3
at some point soon.

Contributes to cockroachdb#18620.

Release note: None
couchand added a commit to couchand/cockroach that referenced this issue Dec 14, 2017
This is the last major functionality NVD3 is giving us (besides the
charts themselves).  Replacing it with our own will enable future
customization as well as make it easier to completely excise NVD3
at some point soon.

Contributes to cockroachdb#18620.

Release note: None
@couchand couchand modified the milestones: 2.0, Later Jan 29, 2018
@knz knz added C-cleanup Tech debt, refactors, loose ends, etc. Solution not expected to significantly change behavior. and removed refactoring labels Apr 24, 2018
couchand added a commit to couchand/cockroach that referenced this issue Aug 2, 2018
This is the last major functionality NVD3 is giving us (besides the
charts themselves).  Replacing it with our own will enable future
customization as well as make it easier to completely excise NVD3
at some point soon.

Contributes to cockroachdb#18620.

Release note: None
@petermattis petermattis removed this from the Later milestone Oct 5, 2018
@github-actions
Copy link

github-actions bot commented Jun 9, 2021

We have marked this issue as stale because it has been inactive for
18 months. If this issue is still relevant, removing the stale label
or adding a comment will keep it active. Otherwise, we'll close it in
10 days to keep the issue queue tidy. Thank you for your contribution
to CockroachDB!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-webui-timeseries C-cleanup Tech debt, refactors, loose ends, etc. Solution not expected to significantly change behavior. no-issue-activity X-stale
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants