Skip to content

Commit d31a225

Browse files
author
Niilo Keinänen
committed
LCJS v8.0.0
1 parent fd105b5 commit d31a225

8 files changed

+21
-39
lines changed

README.md

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ The spectrogram chart contains 1024 x 1024 = ~1 million data points.
3636
* [Paletted Fill]
3737
* [LUT]
3838
* [Empty line style]
39-
* [Legend Box]
40-
* [Legend Box builders]
4139

4240

4341
## Support
@@ -61,14 +59,12 @@ Direct developer email support can be purchased through a [Support Plan][4] or b
6159
© LightningChart Ltd 2009-2022. All rights reserved.
6260

6361

64-
[Dashboard]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/Dashboard.html
65-
[XY cartesian chart]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/ChartXY.html
66-
[Heatmap Grid Series Intensity]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/HeatmapGridSeriesIntensityValues.html
67-
[Line Series]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/LineSeries.html
68-
[Axis scroll strategies]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/variables/AxisScrollStrategies.html
69-
[Paletted Fill]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/PalettedFill.html
70-
[LUT]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/LUT.html
71-
[Empty line style]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/variables/emptyLine.html
72-
[Legend Box]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/classes/Chart.html#addLegendBox
73-
[Legend Box builders]: https://lightningchart.com/js-charts/api-documentation/v7.1.0/variables/LegendBoxBuilders.html
62+
[Dashboard]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/classes/Dashboard.html
63+
[XY cartesian chart]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/classes/ChartXY.html
64+
[Heatmap Grid Series Intensity]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/classes/HeatmapGridSeriesIntensityValues.html
65+
[Line Series]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/classes/LineSeries.html
66+
[Axis scroll strategies]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/variables/AxisScrollStrategies.html
67+
[Paletted Fill]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/classes/PalettedFill.html
68+
[LUT]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/classes/LUT.html
69+
[Empty line style]: https://lightningchart.com/js-charts/api-documentation/v8.0.0/variables/emptyLine.html
7470

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
"webpack-stream": "^7.0.0"
1818
},
1919
"dependencies": {
20-
"@lightningchart/lcjs": "^7.1.0",
21-
"@lightningchart/xydata": "^1.4.0"
20+
"@lightningchart/lcjs": "^8.0.0",
21+
"@lightningchart/xydata": "^1.5.0"
2222
},
2323
"lightningChart": {
2424
"eID": "0805"
-19.7 KB
Loading

spectrogramProjection-darkGold.png

37.5 KB
Loading

spectrogramProjection-light.png

-70.1 KB
Loading
-40.9 KB
Loading
-31.9 KB
Loading

src/index.js

Lines changed: 11 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ const {
1212
emptyFill,
1313
emptyLine,
1414
AxisScrollStrategies,
15-
LegendBoxBuilders,
1615
synchronizeAxisIntervals,
1716
regularColorSteps,
1817
Themes,
18+
LegendPosition,
1919
} = lcjs
2020

2121
const { createSpectrumDataGenerator } = require('@lightningchart/xydata')
@@ -43,6 +43,9 @@ const chartSpectrogram = dashboard
4343
.createChartXY({
4444
columnIndex: 0,
4545
rowIndex: 0,
46+
legend: {
47+
position: LegendPosition.TopCenter
48+
},
4649
})
4750
.setTitle('2D Spectrogram with X & Y projection on mouse hover')
4851

@@ -64,23 +67,15 @@ const seriesSpectrogram = chartSpectrogram
6467
}),
6568
)
6669

67-
const legend = chartSpectrogram
68-
.addLegendBox(LegendBoxBuilders.HorizontalLegendBox)
69-
// Dispose example UI elements automatically if they take too much space. This is to avoid bad UI on mobile / etc. devices.
70-
.setAutoDispose({
71-
type: 'max-width',
72-
maxWidth: 0.8,
73-
})
74-
.add(chartSpectrogram)
75-
7670
const chartProjectionY = dashboard
7771
.createChartXY({
7872
columnIndex: 1,
7973
rowIndex: 0,
74+
legend: { visible: false },
8075
})
8176
.setTitleFillStyle(emptyFill)
8277
// NOTE: Hardcoded alignment with Spectrogram chart.
83-
.setPadding({ top: 44 })
78+
.setPadding({ top: 110 })
8479
.setUserInteractions(undefined)
8580

8681
chartProjectionY.getDefaultAxisY().setScrollStrategy(undefined)
@@ -90,17 +85,13 @@ synchronizeAxisIntervals(chartSpectrogram.getDefaultAxisY(), chartProjectionY.ge
9085

9186
chartProjectionY.getDefaultAxisX().setScrollStrategy(AxisScrollStrategies.expansion).setInterval({ start: 0, end: 1, stopAxisAfter: false })
9287

93-
const seriesProjectionY = chartProjectionY
94-
.addPointLineAreaSeries({
95-
dataPattern: 'ProgressiveY',
96-
})
97-
.setName('Projection (Y)')
98-
.setAreaFillStyle(emptyFill)
88+
const seriesProjectionY = chartProjectionY.addLineSeries({}).setName('Projection (Y)')
9989

10090
const chartProjectionX = dashboard
10191
.createChartXY({
10292
columnIndex: 0,
10393
rowIndex: 1,
94+
legend: { visible: false },
10495
})
10596
.setTitleFillStyle(emptyFill)
10697
.setUserInteractions(undefined)
@@ -110,12 +101,7 @@ chartProjectionX.getDefaultAxisX().setScrollStrategy(undefined)
110101
synchronizeAxisIntervals(chartSpectrogram.getDefaultAxisX(), chartProjectionX.getDefaultAxisX())
111102

112103
chartProjectionX.getDefaultAxisY().setScrollStrategy(AxisScrollStrategies.expansion).setInterval({ start: 0, end: 1, stopAxisAfter: false })
113-
const seriesProjectionX = chartProjectionX
114-
.addPointLineAreaSeries({
115-
dataPattern: 'ProgressiveX',
116-
})
117-
.setName('Projection (X)')
118-
.setAreaFillStyle(emptyFill)
104+
const seriesProjectionX = chartProjectionX.addLineSeries({}).setName('Projection (X)')
119105

120106
// Align charts nicely.
121107
chartSpectrogram.getDefaultAxisY().setThickness(50)
@@ -157,12 +143,12 @@ createSpectrumDataGenerator()
157143
// Update projection series data.
158144
seriesProjectionY.clear()
159145
if (projectionY) {
160-
seriesProjectionY.add(projectionY)
146+
seriesProjectionY.appendJSON(projectionY)
161147
}
162148

163149
seriesProjectionX.clear()
164150
if (projectionX) {
165-
seriesProjectionX.add(projectionX)
151+
seriesProjectionX.appendJSON(projectionX)
166152
}
167153
}
168154

0 commit comments

Comments
 (0)