22 Commits

Author SHA1 Message Date
7aa6926ef6 GraphNG: adding possibility to toggle tooltip, graph and legend for series (#29575) 2021-01-06 12:40:32 -08:00
8250b59dfe GraphNG: support fill gradient (#29765) 2020-12-16 11:17:56 -08:00
92527c2647 GraphNG: Enable scale distribution configuration (#29684)
* Enable scale distribution configuration

* use uPlot's rangeLog() instead of rangeNum() for log scales

* merge master

* Remove unsupported log bases

Co-authored-by: Leon Sorokin <leeoniya@gmail.com>
Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-12-15 10:18:30 +01:00
98c0b09564 Sliders: Update behavior and style tweak (#29795)
* Sliders: Update behavior and style tweak

* More style tweaks, and changed new graph opacity option from 0 - 1 to 1 to 100

* Updated point size max

* Fixed hooks useCallback dependency issue

* Update test
2020-12-14 11:34:12 +01:00
e8ae6fd01f GraphNG: simple settings migration from flot panel (#29599) 2020-12-08 08:13:39 -08:00
fee0d44e5c GraphNG: rename "points" to "showPoints" (#29635)
* rename "points" to "showPoints"

* rename ShowPoints enum to PointVisibility
2020-12-07 09:29:34 -06:00
2d156a385b GraphNG: fix and optimize spanNulls (#29633)
* fix and optimize spanNulls

* AsZero implies spanNulls = true, to prevent null-scanning

* move spanNulls toggle below fillOpacity
2020-12-06 19:26:00 -06:00
2f92794c94 GraphNG: rename GraphMode to DrawStyle (#29623) 2020-12-04 13:08:25 -06:00
a36bd89581 GraphNG: add spanNulls config option (#29512) 2020-12-04 10:38:45 -08:00
3c9310e93c GraphNG: support auto and explicit axis width (#29553)
* auto axis

* auto axis

* expand everyhting with the same scale/unit

* expand everyhting with the same scale/unit
2020-12-03 09:30:40 +01:00
22ec38b043 GraphNG: Bars, Staircase, Smooth modes (#29359)
* initial impl of Bars, Staircase, Smooth modes

* fix fillTo for staircase and smooth paths

* fix pointSize

* [bars] adjust gap factor & reduce bar width to include stroke width. remove rounding to favor gap & width uniformity over edge crispness.

* remove line path fallback for too-dense data

* "Auto" points mode implies "Never" for Bars

* slightly reduce x axis tick density

* fix bars height calc, make bars crisp again.

* [bars] don't use hard-coded 'x' scale key

* refactor catmullRomFitting() to accept x & y coord arrays. restrict to processing only visible data range.

* move path building functions to own file

* export typed functions

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
2020-12-02 16:41:24 -06:00
7e21863982 GraphNG: Init refactorings and fixes (#29275)
* When comparing field config, shallowly compare custom config

* Refactoring plot init and data update (WIP)

* GraphNG: Fixed points mode

* Fixed min & max from frame config

* Fixed axis left / right auto logic

* Minor tweak to cursor color

* Fixed time axis now that uPlot deals in milliseconds as well

* fixed ts issue

* Updated test

* Fixed axis placement logic again

* Added new unit test for axis placement logic

* Removed unused props

* Fixed zoom issue due to uPlot time resolution change

* Add back millisecond time tick support

* Comment out GraphNG test

* Fixed being able to switch legend on/off

* Updated unit tests

* GraphNG: Fixed hiding axis

* Frame comparison: allow skipping properties

* Update y-axis ranges without reinitializing uPlot

* update snap

* GraphNG: Fixed axis label placement and spacing issues

* update snaps

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-11-23 19:07:02 +01:00
1895626080 GraphNG: update the options config (#28917) 2020-11-18 08:46:44 -08:00
28ce2f12ed Legend/GraphNG: Refactoring legend types and options (#29067)
* Legend/GraphNG: Refactoring legend types and options

* Rename label

* Minor update

* Fixed legend placement crash issue

* remove unused

* Minor tweaks and fixes
2020-11-13 17:08:55 +01:00
71fffcb17c GraphNG: Using new VizLayout, moving Legend into GraphNG and some other refactorings (#28913)
* Graph refactorings

* Move legend to GraphNG and use new VizLayout

* Things are working

* remove unused things

* Update

* Fixed ng test dashboard

* Update

* More refactoring

* Removed plugin

* Upgrade uplot

* Auto size axis

* Axis scaling

* Fixed tests

* updated

* minor simplification

* Fixed selection color

* Fixed story

* Minor story fix

* Improve x-axis formatting

* Tweaks

* Update

* Updated

* Updates to handle timezone

* Updated

* Fixing types

* Update

* Fixed type

* Updated
2020-11-09 15:31:03 +01:00
2ea4a36bf7 Field color: handling color changes when switching panel types (#28875)
* FieldColor: Per panel settings to filter out supported modes

* Updates

* Updated solution

* Update panel plugin API for standard options support

* Update FieldColorConfigSettings interface

* Change color mode correctly when changing plugin type

* Render only applicable color modes in field color config editor

* Apply field config API changes

* TS fixes

Co-authored-by: Torkel Ödegaard <torkel@grafana.com>
2020-11-09 13:11:09 +01:00
85a04794ac Field config API: add slider editor (#28007)
* Field config: implementation slider editor (#27592)

* PR-28007 feedback fixed

* Field config: implementation slider editor (#27592)

* PR-28007 feedback fixed

* processed review PR-28007

* Field config: implementation slider editor (#27592)

* PR-28007 feedback fixed

* Field config: implementation slider editor (#27592)

* processed review PR-28007

* fixing leftover number[] bugs

* RichHistoryQueriesTab.test fix + slider vertical feat fixed

* fixed Slider.test.tsx expectation

* Added @docs to prevent build-frontend-docs from failing

Co-authored-by: Isa Ozler <contactme@isaozler.com>
2020-10-28 15:00:31 +01:00
2a08f4bdc2 GraphNG: Use AxisSide enum (#28320) 2020-10-16 16:21:42 +02:00
d181782943 FieldColor: Adds new standard color option for color (#28039)
* FieldColor: Added field color option

* Progress

* FieldColor: Added custom schemes

* move to fieldColor

* move to fieldColor

* add back the standard color picker

* FieldColor: Added registry for field color modes

* wip refactor

* Seperate scale from color mode

* Progress

* schemes working

* Stuff is working

* Added fallback

* Updated threshold tests

* Added unit tests

* added more tests

* Made it work with new graph panel

* Use scale calculator from graph panel

* Updates

* Updated test

* Renaming things

* Update packages/grafana-data/src/field/displayProcessor.ts

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>

* updated according to feedback, added docs

* Updated docs

* Updated

* Update docs/sources/panels/field-options/standard-field-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Update docs/sources/panels/field-options/standard-field-options.md

Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>

* Updated docs according to feedback

* fixed test

* Updated

* Updated wording

* Change to fieldState.seriesIndex

* Updated tests

* Updates

* New names

* More work needed to support bar gauge and showing the color modes in the picker

* Now correct gradients work in bar gauge

* before rename

* Unifying the concept

* Updates

* review feedback

* Updated

* Skip minification

* Updated

* UI improvements

Co-authored-by: Ryan McKinley <ryantxu@gmail.com>
Co-authored-by: Diana Payton <52059945+oddlittlebird@users.noreply.github.com>
2020-10-09 09:34:57 +02:00
b995381816 Proposal: Declarative API for axes, scales and series configuration in Graph NG (#27862)
* Fix gdev dashboard

* API for declarative Axis, Series and Scales configuration

* Bring back time zone change support

* Update tests and fix type errors

* Review comments and fixes
2020-09-29 13:25:10 +02:00
3ae6ba034d Graph NG: make series color easy to clear (#27778) 2020-09-25 11:46:39 +02:00
844dd9e8f0 Graph NG WIP (#27572)
* Squash merge Ryans uPlot work

* uPlot - wrap into composable API

* Remove MicroPlot.tsx

* Add missing uPlot stylesheet import

* Use field config for axes config

* Min selection distance for Zoom

* WIP Tooltip behaviour

* Some progress on rendering plot

* gdev dashboard for graph ng tests

* Update custom field config interface for graph options

* Add support for paths in default field config setup (+2 squashed commits)
Squashed commits:
[93fc3afbfc] Typecheck fix
[a07ef86a8b] Add support for paths in default field config setup

* Include IANA timezone canonical name in TimeZoneInfo

* Use correct time zone on time axis

* Default axis width

* Use system date time formats for time axis ticks

* Graph panel layout

* Respect config paths when rendering default value of field config property

* Fix mismatch in field config editor types

* Color field option editor

* Refactor plot context to a single one

* First version of new graph legend plugin

* Fix mutable data frame

* Multiple ui fixes, layout is still slightly problematic

* Remove unused

* Fix tooltip test

* Some perf optimisations

* Update dev dashboard

* Typecheck fix

* Do not use color value editor as standard property editor, add custom field config to graph panel to control series color

* Update dev dashboard with correct tags

* Fix undefined issues

* Update devenv/dev-dashboards/panel-graph/graph-ng.json
2020-09-24 16:44:35 +02:00