Multiple Date Axes
Two years on one chart: 2023 and 2025 each get their own date axis, so both start at the left edge and line up day by day. Each axis is labeled in the color of its line.
About this chart
When to give each series its own date axis
Laying two periods over each other is the clearest way to compare this year with last: the same day of the year sits at the same spot, so seasonal patterns line up. Each line keeps its real dates, on its own axis and in the tooltips.
Good for
- This year against last, or any two periods
- Seasonal patterns: holidays, weather, school terms
- Before and after a change, lined up by day
Think twice when
- Periods of different length: the shorter line stops early
- More than two or three periods: the date axes stack up
- Weekly patterns: a date falls on a different weekday each year
For developers
Get the code.
Built with amCharts 5, a JavaScript library. The JavaScript includes your theme and renderer (canvas or SVG); the JSON also follows the changes you make with the controls.
For projects that use npm:
How it reads:
npm install @amcharts/amcharts5. See Getting started.
The same chart as a JSON config. Chart Maker reads and writes this format, the library's JSON parser turns it into a chart, and the <am5-chart> element puts it on a page with no code.How it reads:
"type" is the class to create and "settings" what you would pass to its new() in code; "properties" fill in its parts, lists such as series and axes or templates such as columns.template; "refs" holds objects used in more than one place ("#series-0" stands for the one named series-0); a string starting with "@" takes a value from another object, such as "@series.get('fill')".
A complete page. Save it as an .html file and open it in a browser.
Paste this into an AI coding assistant to build the chart from scratch. More in amCharts & AI.
// Random daily prices for two years. Each day moves the price by up to 5%,
// so it wanders but never drops below zero.
var data0 = [];
var data1 = [];
var price = 1000; // the 2023 prices start at 1000
for (var i = 1; i <= 360; i++) { // 360 days from January 1, 2023
price += Math.round((Math.random() - 0.5) * price / 10);
data0.push({ date: new Date(2023, 0, i).getTime(), price: price });
}
var price = 1200; // the 2025 prices start at 1200
for (var i = 1; i <= 360; i++) { // 360 days from January 1, 2025
price += Math.round((Math.random() - 0.5) * price / 10);
data1.push({ date: new Date(2025, 0, i).getTime(), price: price });
}
// Create root element
// https://docs.amcharts.com/v5/getting-started/#root-element
var root = am5.Root.new("chartdiv");
// Set themes
// https://docs.amcharts.com/v5/concepts/themes/
root.setThemes([
am5themes_Animated.new(root),
am5themes_Responsive.new(root)
]);
// Create chart
// https://docs.amcharts.com/v5/charts/xy-chart/
var chart = root.container.children.push(
am5xy.XYChart.new(root, {
panX: false, // dragging the plot doesn't pan...
panY: false, // ...in either direction
wheelX: "panX", // a horizontal wheel or trackpad swipe pans...
wheelY: "zoomX" // ...and the vertical wheel zooms in on the days
})
);
// Skip two colors between series, so the two years are easy to tell apart
chart.get("colors").set("step", 3);
// Add cursor
// https://docs.amcharts.com/v5/charts/xy-chart/cursor/
var cursor = chart.set("cursor", am5xy.XYCursor.new(root, {
// drag across the plot to zoom into that stretch of days
behavior: "zoomX"
}));
cursor.lineY.set("visible", false); // only the vertical cursor line, no horizontal one
// Create axes
// https://docs.amcharts.com/v5/charts/xy-chart/axes/
var xAxis0 = chart.xAxes.push(
am5xy.DateAxis.new(root, {
baseInterval: { timeUnit: "day", count: 1 }, // one point per day
renderer: am5xy.AxisRendererX.new(root, {}),
tooltip: am5.Tooltip.new(root, {}), // a date label follows the cursor along this axis...
tooltipDateFormat: "yyyy-MM-dd" // ...with the full date
})
);
var xAxis1 = chart.xAxes.push(
am5xy.DateAxis.new(root, {
marginTop: 10, // a 10px gap above the second date axis
baseInterval: { timeUnit: "day", count: 1 }, // one point per day
renderer: am5xy.AxisRendererX.new(root, {}),
tooltip: am5.Tooltip.new(root, {}), // a date label follows the cursor along this axis...
tooltipDateFormat: "yyyy-MM-dd" // ...with the full date
})
);
var yAxis = chart.yAxes.push(
am5xy.ValueAxis.new(root, {
renderer: am5xy.AxisRendererY.new(root, {})
})
);
// Hide the label at the very bottom of the value axis: it would run into
// the first date label in the corner
yAxis.get("renderer").labels.template.set("minPosition", 0.05);
// Add series
// https://docs.amcharts.com/v5/charts/xy-chart/series/
// Each series uses its own date axis, so both years start at the left edge
var series0 = chart.series.push(
am5xy.LineSeries.new(root, {
name: "2023",
xAxis: xAxis0,
yAxis: yAxis,
valueYField: "price",
valueXField: "date",
tooltip: am5.Tooltip.new(root, {
labelText: "{name}: {valueY}" // the year and the price
})
})
);
var series1 = chart.series.push(
am5xy.LineSeries.new(root, {
name: "2025",
xAxis: xAxis1,
yAxis: yAxis,
valueYField: "price",
valueXField: "date",
tooltip: am5.Tooltip.new(root, {
labelText: "{name}: {valueY}" // the year and the price
})
})
);
// Color each date axis's labels like its line, to show which is which
xAxis0.get("renderer").labels.template.set("fill", series0.get("stroke"));
xAxis1.get("renderer").labels.template.set("fill", series1.get("stroke"));
// Add scrollbar
// https://docs.amcharts.com/v5/charts/xy-chart/scrollbars/
var scrollbar = chart.set("scrollbarX", am5xy.XYChartScrollbar.new(root, {
orientation: "horizontal", // a bar above the plot to zoom and scroll, with a small chart in it
height: 60 // 60px tall
}));
// the small chart inside the scrollbar gets its own axes and series
var sbDateAxis = scrollbar.chart.xAxes.push(
am5xy.DateAxis.new(root, {
baseInterval: { // one point per day
timeUnit: "day",
count: 1
},
renderer: am5xy.AxisRendererX.new(root, {})
})
);
var sbValueAxis = scrollbar.chart.yAxes.push(
am5xy.ValueAxis.new(root, {
renderer: am5xy.AxisRendererY.new(root, {})
})
);
// The scrollbar previews the first year
var sbSeries = scrollbar.chart.series.push(
am5xy.LineSeries.new(root, {
valueYField: "price",
valueXField: "date",
xAxis: sbDateAxis,
yAxis: sbValueAxis
})
);
series0.data.setAll(data0);
series1.data.setAll(data1);
sbSeries.data.setAll(data0);
// Make stuff animate on load
// https://docs.amcharts.com/v5/concepts/animations/
series0.appear(1000);
series1.appear(1000);
chart.appear(1000, 100);
{
"type": "XYChart",
"settings": {
"panX": false,
"panY": false,
"wheelX": "panX",
"wheelY": "zoomX",
"cursor": {
"type": "XYCursor",
"settings": {
"behavior": "zoomX"
},
"properties": {
"lineY": {
"settings": {
"visible": false
}
}
}
},
"scrollbarX": {
"type": "XYChartScrollbar",
"settings": {
"orientation": "horizontal",
"height": 60
},
"properties": {
"chart": {
"properties": {
"series": [
"#series-2"
],
"xAxes": [
"#axis-3"
],
"yAxes": [
"#axis-4"
]
}
}
}
},
"colors": {
"type": "ColorSet",
"settings": {
"step": 3
}
}
},
"properties": {
"series": [
"#series-0",
"#series-1"
],
"xAxes": [
"#axis-0",
"#axis-1"
],
"yAxes": [
"#axis-2"
]
},
"refs": [
{
"data-0": [
{
"date": 1672524000000,
"price": 1013
},
{
"date": 1672610400000,
"price": 997
},
{
"date": 1672696800000,
"price": 951
},
{
"date": 1672783200000,
"price": 925
},
{
"date": 1672869600000,
"price": 902
},
{
"date": 1672956000000,
"price": 889
},
{
"date": 1673042400000,
"price": 867
},
{
"date": 1673128800000,
"price": 828
},
{
"date": 1673215200000,
"price": 862
},
{
"date": 1673301600000,
"price": 884
},
{
"date": 1673388000000,
"price": 917
},
{
"date": 1673474400000,
"price": 925
},
{
"date": 1673560800000,
"price": 901
},
{
"date": 1673647200000,
"price": 902
},
{
"date": 1673733600000,
"price": 930
},
{
"date": 1673820000000,
"price": 961
},
{
"date": 1673906400000,
"price": 988
},
{
"date": 1673992800000,
"price": 1025
},
{
"date": 1674079200000,
"price": 994
},
{
"date": 1674165600000,
"price": 962
},
{
"date": 1674252000000,
"price": 1007
},
{
"date": 1674338400000,
"price": 1047
},
{
"date": 1674424800000,
"price": 1040
},
{
"date": 1674511200000,
"price": 1058
},
{
"date": 1674597600000,
"price": 1071
},
{
"date": 1674684000000,
"price": 1045
},
{
"date": 1674770400000,
"price": 1095
},
{
"date": 1674856800000,
"price": 1146
},
{
"date": 1674943200000,
"price": 1127
},
{
"date": 1675029600000,
"price": 1157
},
{
"date": 1675116000000,
"price": 1149
},
{
"date": 1675202400000,
"price": 1166
},
{
"date": 1675288800000,
"price": 1144
},
{
"date": 1675375200000,
"price": 1111
},
{
"date": 1675461600000,
"price": 1150
},
{
"date": 1675548000000,
"price": 1165
},
{
"date": 1675634400000,
"price": 1107
},
{
"date": 1675720800000,
"price": 1105
},
{
"date": 1675807200000,
"price": 1122
},
{
"date": 1675893600000,
"price": 1171
},
{
"date": 1675980000000,
"price": 1152
},
{
"date": 1676066400000,
"price": 1194
},
{
"date": 1676152800000,
"price": 1246
},
{
"date": 1676239200000,
"price": 1274
},
{
"date": 1676325600000,
"price": 1232
},
{
"date": 1676412000000,
"price": 1257
},
{
"date": 1676498400000,
"price": 1288
},
{
"date": 1676584800000,
"price": 1252
},
{
"date": 1676671200000,
"price": 1285
},
{
"date": 1676757600000,
"price": 1252
},
{
"date": 1676844000000,
"price": 1245
},
{
"date": 1676930400000,
"price": 1194
},
{
"date": 1677016800000,
"price": 1251
},
{
"date": 1677103200000,
"price": 1229
},
{
"date": 1677189600000,
"price": 1211
},
{
"date": 1677276000000,
"price": 1187
},
{
"date": 1677362400000,
"price": 1154
},
{
"date": 1677448800000,
"price": 1134
},
{
"date": 1677535200000,
"price": 1078
},
{
"date": 1677621600000,
"price": 1043
},
{
"date": 1677708000000,
"price": 1005
},
{
"date": 1677794400000,
"price": 1045
},
{
"date": 1677880800000,
"price": 1078
},
{
"date": 1677967200000,
"price": 1085
},
{
"date": 1678053600000,
"price": 1070
},
{
"date": 1678140000000,
"price": 1082
},
{
"date": 1678226400000,
"price": 1062
},
{
"date": 1678312800000,
"price": 1081
},
{
"date": 1678399200000,
"price": 1108
},
{
"date": 1678485600000,
"price": 1053
},
{
"date": 1678572000000,
"price": 1095
},
{
"date": 1678658400000,
"price": 1058
},
{
"date": 1678744800000,
"price": 1102
},
{
"date": 1678831200000,
"price": 1111
},
{
"date": 1678917600000,
"price": 1120
},
{
"date": 1679004000000,
"price": 1094
},
{
"date": 1679090400000,
"price": 1061
},
{
"date": 1679176800000,
"price": 1059
},
{
"date": 1679263200000,
"price": 1106
},
{
"date": 1679349600000,
"price": 1064
},
{
"date": 1679436000000,
"price": 1065
},
{
"date": 1679522400000,
"price": 1044
},
{
"date": 1679608800000,
"price": 1033
},
{
"date": 1679695200000,
"price": 1076
},
{
"date": 1679781600000,
"price": 1076
},
{
"date": 1679864400000,
"price": 1120
},
{
"date": 1679950800000,
"price": 1083
},
{
"date": 1680037200000,
"price": 1044
},
{
"date": 1680123600000,
"price": 1027
},
{
"date": 1680210000000,
"price": 1032
},
{
"date": 1680296400000,
"price": 984
},
{
"date": 1680382800000,
"price": 949
},
{
"date": 1680469200000,
"price": 958
},
{
"date": 1680555600000,
"price": 998
},
{
"date": 1680642000000,
"price": 1003
},
{
"date": 1680728400000,
"price": 997
},
{
"date": 1680814800000,
"price": 957
},
{
"date": 1680901200000,
"price": 979
},
{
"date": 1680987600000,
"price": 998
},
{
"date": 1681074000000,
"price": 971
},
{
"date": 1681160400000,
"price": 1016
},
{
"date": 1681246800000,
"price": 973
},
{
"date": 1681333200000,
"price": 950
},
{
"date": 1681419600000,
"price": 952
},
{
"date": 1681506000000,
"price": 971
},
{
"date": 1681592400000,
"price": 965
},
{
"date": 1681678800000,
"price": 927
},
{
"date": 1681765200000,
"price": 949
},
{
"date": 1681851600000,
"price": 975
},
{
"date": 1681938000000,
"price": 971
},
{
"date": 1682024400000,
"price": 1018
},
{
"date": 1682110800000,
"price": 1047
},
{
"date": 1682197200000,
"price": 1076
},
{
"date": 1682283600000,
"price": 1045
},
{
"date": 1682370000000,
"price": 1030
},
{
"date": 1682456400000,
"price": 998
},
{
"date": 1682542800000,
"price": 1016
},
{
"date": 1682629200000,
"price": 1022
},
{
"date": 1682715600000,
"price": 1018
},
{
"date": 1682802000000,
"price": 973
},
{
"date": 1682888400000,
"price": 969
},
{
"date": 1682974800000,
"price": 970
},
{
"date": 1683061200000,
"price": 986
},
{
"date": 1683147600000,
"price": 961
},
{
"date": 1683234000000,
"price": 935
},
{
"date": 1683320400000,
"price": 908
},
{
"date": 1683406800000,
"price": 938
},
{
"date": 1683493200000,
"price": 946
},
{
"date": 1683579600000,
"price": 925
},
{
"date": 1683666000000,
"price": 923
},
{
"date": 1683752400000,
"price": 889
},
{
"date": 1683838800000,
"price": 892
},
{
"date": 1683925200000,
"price": 853
},
{
"date": 1684011600000,
"price": 858
},
{
"date": 1684098000000,
"price": 858
},
{
"date": 1684184400000,
"price": 819
},
{
"date": 1684270800000,
"price": 843
},
{
"date": 1684357200000,
"price": 863
},
{
"date": 1684443600000,
"price": 875
},
{
"date": 1684530000000,
"price": 910
},
{
"date": 1684616400000,
"price": 872
},
{
"date": 1684702800000,
"price": 892
},
{
"date": 1684789200000,
"price": 914
},
{
"date": 1684875600000,
"price": 938
},
{
"date": 1684962000000,
"price": 908
},
{
"date": 1685048400000,
"price": 906
},
{
"date": 1685134800000,
"price": 920
},
{
"date": 1685221200000,
"price": 879
},
{
"date": 1685307600000,
"price": 849
},
{
"date": 1685394000000,
"price": 867
},
{
"date": 1685480400000,
"price": 843
},
{
"date": 1685566800000,
"price": 842
},
{
"date": 1685653200000,
"price": 849
},
{
"date": 1685739600000,
"price": 881
},
{
"date": 1685826000000,
"price": 893
},
{
"date": 1685912400000,
"price": 930
},
{
"date": 1685998800000,
"price": 902
},
{
"date": 1686085200000,
"price": 913
},
{
"date": 1686171600000,
"price": 939
},
{
"date": 1686258000000,
"price": 982
},
{
"date": 1686344400000,
"price": 1000
},
{
"date": 1686430800000,
"price": 997
},
{
"date": 1686517200000,
"price": 1013
},
{
"date": 1686603600000,
"price": 1009
},
{
"date": 1686690000000,
"price": 986
},
{
"date": 1686776400000,
"price": 999
},
{
"date": 1686862800000,
"price": 994
},
{
"date": 1686949200000,
"price": 1028
},
{
"date": 1687035600000,
"price": 1025
},
{
"date": 1687122000000,
"price": 1003
},
{
"date": 1687208400000,
"price": 1029
},
{
"date": 1687294800000,
"price": 1000
},
{
"date": 1687381200000,
"price": 1019
},
{
"date": 1687467600000,
"price": 997
},
{
"date": 1687554000000,
"price": 1010
},
{
"date": 1687640400000,
"price": 1014
},
{
"date": 1687726800000,
"price": 1043
},
{
"date": 1687813200000,
"price": 1059
},
{
"date": 1687899600000,
"price": 1012
},
{
"date": 1687986000000,
"price": 1031
},
{
"date": 1688072400000,
"price": 1027
},
{
"date": 1688158800000,
"price": 1008
},
{
"date": 1688245200000,
"price": 1031
},
{
"date": 1688331600000,
"price": 1000
},
{
"date": 1688418000000,
"price": 982
},
{
"date": 1688504400000,
"price": 938
},
{
"date": 1688590800000,
"price": 927
},
{
"date": 1688677200000,
"price": 957
},
{
"date": 1688763600000,
"price": 932
},
{
"date": 1688850000000,
"price": 916
},
{
"date": 1688936400000,
"price": 933
},
{
"date": 1689022800000,
"price": 979
},
{
"date": 1689109200000,
"price": 999
},
{
"date": 1689195600000,
"price": 1003
},
{
"date": 1689282000000,
"price": 989
},
{
"date": 1689368400000,
"price": 1032
},
{
"date": 1689454800000,
"price": 1037
},
{
"date": 1689541200000,
"price": 1042
},
{
"date": 1689627600000,
"price": 1025
},
{
"date": 1689714000000,
"price": 1033
},
{
"date": 1689800400000,
"price": 1055
},
{
"date": 1689886800000,
"price": 1024
},
{
"date": 1689973200000,
"price": 1023
},
{
"date": 1690059600000,
"price": 980
},
{
"date": 1690146000000,
"price": 987
},
{
"date": 1690232400000,
"price": 958
},
{
"date": 1690318800000,
"price": 998
},
{
"date": 1690405200000,
"price": 1028
},
{
"date": 1690491600000,
"price": 1009
},
{
"date": 1690578000000,
"price": 1014
},
{
"date": 1690664400000,
"price": 1058
},
{
"date": 1690750800000,
"price": 1050
},
{
"date": 1690837200000,
"price": 1014
},
{
"date": 1690923600000,
"price": 1043
},
{
"date": 1691010000000,
"price": 1085
},
{
"date": 1691096400000,
"price": 1073
},
{
"date": 1691182800000,
"price": 1073
},
{
"date": 1691269200000,
"price": 1050
},
{
"date": 1691355600000,
"price": 1086
},
{
"date": 1691442000000,
"price": 1106
},
{
"date": 1691528400000,
"price": 1095
},
{
"date": 1691614800000,
"price": 1062
},
{
"date": 1691701200000,
"price": 1058
},
{
"date": 1691787600000,
"price": 1084
},
{
"date": 1691874000000,
"price": 1094
},
{
"date": 1691960400000,
"price": 1055
},
{
"date": 1692046800000,
"price": 1065
},
{
"date": 1692133200000,
"price": 1034
},
{
"date": 1692219600000,
"price": 1034
},
{
"date": 1692306000000,
"price": 1049
},
{
"date": 1692392400000,
"price": 997
},
{
"date": 1692478800000,
"price": 994
},
{
"date": 1692565200000,
"price": 1032
},
{
"date": 1692651600000,
"price": 997
},
{
"date": 1692738000000,
"price": 1007
},
{
"date": 1692824400000,
"price": 1034
},
{
"date": 1692910800000,
"price": 1066
},
{
"date": 1692997200000,
"price": 1116
},
{
"date": 1693083600000,
"price": 1152
},
{
"date": 1693170000000,
"price": 1168
},
{
"date": 1693256400000,
"price": 1224
},
{
"date": 1693342800000,
"price": 1227
},
{
"date": 1693429200000,
"price": 1191
},
{
"date": 1693515600000,
"price": 1190
},
{
"date": 1693602000000,
"price": 1197
},
{
"date": 1693688400000,
"price": 1180
},
{
"date": 1693774800000,
"price": 1132
},
{
"date": 1693861200000,
"price": 1142
},
{
"date": 1693947600000,
"price": 1131
},
{
"date": 1694034000000,
"price": 1130
},
{
"date": 1694120400000,
"price": 1135
},
{
"date": 1694206800000,
"price": 1080
},
{
"date": 1694293200000,
"price": 1131
},
{
"date": 1694379600000,
"price": 1144
},
{
"date": 1694466000000,
"price": 1097
},
{
"date": 1694552400000,
"price": 1103
},
{
"date": 1694638800000,
"price": 1060
},
{
"date": 1694725200000,
"price": 1095
},
{
"date": 1694811600000,
"price": 1046
},
{
"date": 1694898000000,
"price": 1053
},
{
"date": 1694984400000,
"price": 1004
},
{
"date": 1695070800000,
"price": 1016
},
{
"date": 1695157200000,
"price": 1041
},
{
"date": 1695243600000,
"price": 1051
},
{
"date": 1695330000000,
"price": 1057
},
{
"date": 1695416400000,
"price": 1008
},
{
"date": 1695502800000,
"price": 1000
},
{
"date": 1695589200000,
"price": 971
},
{
"date": 1695675600000,
"price": 987
},
{
"date": 1695762000000,
"price": 1032
},
{
"date": 1695848400000,
"price": 1075
},
{
"date": 1695934800000,
"price": 1128
},
{
"date": 1696021200000,
"price": 1089
},
{
"date": 1696107600000,
"price": 1138
},
{
"date": 1696194000000,
"price": 1144
},
{
"date": 1696280400000,
"price": 1108
},
{
"date": 1696366800000,
"price": 1057
},
{
"date": 1696453200000,
"price": 1005
},
{
"date": 1696539600000,
"price": 1051
},
{
"date": 1696626000000,
"price": 1065
},
{
"date": 1696712400000,
"price": 1026
},
{
"date": 1696798800000,
"price": 1071
},
{
"date": 1696885200000,
"price": 1115
},
{
"date": 1696971600000,
"price": 1063
},
{
"date": 1697058000000,
"price": 1043
},
{
"date": 1697144400000,
"price": 1001
},
{
"date": 1697230800000,
"price": 998
},
{
"date": 1697317200000,
"price": 1017
},
{
"date": 1697403600000,
"price": 1050
},
{
"date": 1697490000000,
"price": 1048
},
{
"date": 1697576400000,
"price": 1053
},
{
"date": 1697662800000,
"price": 1020
},
{
"date": 1697749200000,
"price": 1030
},
{
"date": 1697835600000,
"price": 1032
},
{
"date": 1697922000000,
"price": 1031
},
{
"date": 1698008400000,
"price": 1075
},
{
"date": 1698094800000,
"price": 1064
},
{
"date": 1698181200000,
"price": 1090
},
{
"date": 1698267600000,
"price": 1072
},
{
"date": 1698354000000,
"price": 1046
},
{
"date": 1698440400000,
"price": 1056
},
{
"date": 1698526800000,
"price": 1082
},
{
"date": 1698616800000,
"price": 1092
},
{
"date": 1698703200000,
"price": 1114
},
{
"date": 1698789600000,
"price": 1138
},
{
"date": 1698876000000,
"price": 1173
},
{
"date": 1698962400000,
"price": 1223
},
{
"date": 1699048800000,
"price": 1269
},
{
"date": 1699135200000,
"price": 1215
},
{
"date": 1699221600000,
"price": 1214
},
{
"date": 1699308000000,
"price": 1268
},
{
"date": 1699394400000,
"price": 1210
},
{
"date": 1699480800000,
"price": 1209
},
{
"date": 1699567200000,
"price": 1202
},
{
"date": 1699653600000,
"price": 1262
},
{
"date": 1699740000000,
"price": 1207
},
{
"date": 1699826400000,
"price": 1238
},
{
"date": 1699912800000,
"price": 1242
},
{
"date": 1699999200000,
"price": 1235
},
{
"date": 1700085600000,
"price": 1204
},
{
"date": 1700172000000,
"price": 1196
},
{
"date": 1700258400000,
"price": 1187
},
{
"date": 1700344800000,
"price": 1245
},
{
"date": 1700431200000,
"price": 1238
},
{
"date": 1700517600000,
"price": 1204
},
{
"date": 1700604000000,
"price": 1171
},
{
"date": 1700690400000,
"price": 1145
},
{
"date": 1700776800000,
"price": 1126
},
{
"date": 1700863200000,
"price": 1140
},
{
"date": 1700949600000,
"price": 1137
},
{
"date": 1701036000000,
"price": 1156
},
{
"date": 1701122400000,
"price": 1210
},
{
"date": 1701208800000,
"price": 1157
},
{
"date": 1701295200000,
"price": 1125
},
{
"date": 1701381600000,
"price": 1120
},
{
"date": 1701468000000,
"price": 1065
},
{
"date": 1701554400000,
"price": 1035
},
{
"date": 1701640800000,
"price": 1060
},
{
"date": 1701727200000,
"price": 1107
},
{
"date": 1701813600000,
"price": 1102
},
{
"date": 1701900000000,
"price": 1115
},
{
"date": 1701986400000,
"price": 1142
},
{
"date": 1702072800000,
"price": 1140
},
{
"date": 1702159200000,
"price": 1107
},
{
"date": 1702245600000,
"price": 1137
},
{
"date": 1702332000000,
"price": 1133
},
{
"date": 1702418400000,
"price": 1118
},
{
"date": 1702504800000,
"price": 1110
},
{
"date": 1702591200000,
"price": 1055
},
{
"date": 1702677600000,
"price": 1042
},
{
"date": 1702764000000,
"price": 1078
},
{
"date": 1702850400000,
"price": 1091
},
{
"date": 1702936800000,
"price": 1057
},
{
"date": 1703023200000,
"price": 1059
},
{
"date": 1703109600000,
"price": 1100
},
{
"date": 1703196000000,
"price": 1153
},
{
"date": 1703282400000,
"price": 1171
},
{
"date": 1703368800000,
"price": 1229
},
{
"date": 1703455200000,
"price": 1288
},
{
"date": 1703541600000,
"price": 1300
}
]
},
{
"data-1": [
{
"date": 1735682400000,
"price": 1146
},
{
"date": 1735768800000,
"price": 1144
},
{
"date": 1735855200000,
"price": 1142
},
{
"date": 1735941600000,
"price": 1190
},
{
"date": 1736028000000,
"price": 1171
},
{
"date": 1736114400000,
"price": 1123
},
{
"date": 1736200800000,
"price": 1138
},
{
"date": 1736287200000,
"price": 1162
},
{
"date": 1736373600000,
"price": 1109
},
{
"date": 1736460000000,
"price": 1104
},
{
"date": 1736546400000,
"price": 1157
},
{
"date": 1736632800000,
"price": 1185
},
{
"date": 1736719200000,
"price": 1172
},
{
"date": 1736805600000,
"price": 1213
},
{
"date": 1736892000000,
"price": 1214
},
{
"date": 1736978400000,
"price": 1198
},
{
"date": 1737064800000,
"price": 1202
},
{
"date": 1737151200000,
"price": 1191
},
{
"date": 1737237600000,
"price": 1145
},
{
"date": 1737324000000,
"price": 1132
},
{
"date": 1737410400000,
"price": 1130
},
{
"date": 1737496800000,
"price": 1089
},
{
"date": 1737583200000,
"price": 1134
},
{
"date": 1737669600000,
"price": 1117
},
{
"date": 1737756000000,
"price": 1082
},
{
"date": 1737842400000,
"price": 1076
},
{
"date": 1737928800000,
"price": 1113
},
{
"date": 1738015200000,
"price": 1154
},
{
"date": 1738101600000,
"price": 1187
},
{
"date": 1738188000000,
"price": 1187
},
{
"date": 1738274400000,
"price": 1176
},
{
"date": 1738360800000,
"price": 1127
},
{
"date": 1738447200000,
"price": 1160
},
{
"date": 1738533600000,
"price": 1121
},
{
"date": 1738620000000,
"price": 1162
},
{
"date": 1738706400000,
"price": 1149
},
{
"date": 1738792800000,
"price": 1150
},
{
"date": 1738879200000,
"price": 1149
},
{
"date": 1738965600000,
"price": 1126
},
{
"date": 1739052000000,
"price": 1073
},
{
"date": 1739138400000,
"price": 1125
},
{
"date": 1739224800000,
"price": 1122
},
{
"date": 1739311200000,
"price": 1168
},
{
"date": 1739397600000,
"price": 1152
},
{
"date": 1739484000000,
"price": 1178
},
{
"date": 1739570400000,
"price": 1146
},
{
"date": 1739656800000,
"price": 1107
},
{
"date": 1739743200000,
"price": 1151
},
{
"date": 1739829600000,
"price": 1103
},
{
"date": 1739916000000,
"price": 1145
},
{
"date": 1740002400000,
"price": 1139
},
{
"date": 1740088800000,
"price": 1132
},
{
"date": 1740175200000,
"price": 1154
},
{
"date": 1740261600000,
"price": 1141
},
{
"date": 1740348000000,
"price": 1188
},
{
"date": 1740434400000,
"price": 1140
},
{
"date": 1740520800000,
"price": 1191
},
{
"date": 1740607200000,
"price": 1238
},
{
"date": 1740693600000,
"price": 1260
},
{
"date": 1740780000000,
"price": 1300
},
{
"date": 1740866400000,
"price": 1322
},
{
"date": 1740952800000,
"price": 1287
},
{
"date": 1741039200000,
"price": 1246
},
{
"date": 1741125600000,
"price": 1246
},
{
"date": 1741212000000,
"price": 1224
},
{
"date": 1741298400000,
"price": 1259
},
{
"date": 1741384800000,
"price": 1305
},
{
"date": 1741471200000,
"price": 1304
},
{
"date": 1741557600000,
"price": 1286
},
{
"date": 1741644000000,
"price": 1330
},
{
"date": 1741730400000,
"price": 1345
},
{
"date": 1741816800000,
"price": 1326
},
{
"date": 1741903200000,
"price": 1368
},
{
"date": 1741989600000,
"price": 1430
},
{
"date": 1742076000000,
"price": 1405
},
{
"date": 1742162400000,
"price": 1389
},
{
"date": 1742248800000,
"price": 1413
},
{
"date": 1742335200000,
"price": 1468
},
{
"date": 1742421600000,
"price": 1528
},
{
"date": 1742508000000,
"price": 1578
},
{
"date": 1742594400000,
"price": 1586
},
{
"date": 1742680800000,
"price": 1545
},
{
"date": 1742767200000,
"price": 1535
},
{
"date": 1742853600000,
"price": 1497
},
{
"date": 1742940000000,
"price": 1544
},
{
"date": 1743026400000,
"price": 1568
},
{
"date": 1743112800000,
"price": 1608
},
{
"date": 1743199200000,
"price": 1528
},
{
"date": 1743285600000,
"price": 1567
},
{
"date": 1743368400000,
"price": 1605
},
{
"date": 1743454800000,
"price": 1594
},
{
"date": 1743541200000,
"price": 1532
},
{
"date": 1743627600000,
"price": 1497
},
{
"date": 1743714000000,
"price": 1569
},
{
"date": 1743800400000,
"price": 1493
},
{
"date": 1743886800000,
"price": 1439
},
{
"date": 1743973200000,
"price": 1450
},
{
"date": 1744059600000,
"price": 1513
},
{
"date": 1744146000000,
"price": 1588
},
{
"date": 1744232400000,
"price": 1591
},
{
"date": 1744318800000,
"price": 1650
},
{
"date": 1744405200000,
"price": 1642
},
{
"date": 1744491600000,
"price": 1703
},
{
"date": 1744578000000,
"price": 1727
},
{
"date": 1744664400000,
"price": 1803
},
{
"date": 1744750800000,
"price": 1734
},
{
"date": 1744837200000,
"price": 1720
},
{
"date": 1744923600000,
"price": 1685
},
{
"date": 1745010000000,
"price": 1603
},
{
"date": 1745096400000,
"price": 1570
},
{
"date": 1745182800000,
"price": 1557
},
{
"date": 1745269200000,
"price": 1593
},
{
"date": 1745355600000,
"price": 1631
},
{
"date": 1745442000000,
"price": 1661
},
{
"date": 1745528400000,
"price": 1595
},
{
"date": 1745614800000,
"price": 1652
},
{
"date": 1745701200000,
"price": 1686
},
{
"date": 1745787600000,
"price": 1738
},
{
"date": 1745874000000,
"price": 1802
},
{
"date": 1745960400000,
"price": 1832
},
{
"date": 1746046800000,
"price": 1911
},
{
"date": 1746133200000,
"price": 1917
},
{
"date": 1746219600000,
"price": 1993
},
{
"date": 1746306000000,
"price": 1995
},
{
"date": 1746392400000,
"price": 2072
},
{
"date": 1746478800000,
"price": 1982
},
{
"date": 1746565200000,
"price": 1890
},
{
"date": 1746651600000,
"price": 1919
},
{
"date": 1746738000000,
"price": 1942
},
{
"date": 1746824400000,
"price": 1976
},
{
"date": 1746910800000,
"price": 2033
},
{
"date": 1746997200000,
"price": 1935
},
{
"date": 1747083600000,
"price": 1880
},
{
"date": 1747170000000,
"price": 1855
},
{
"date": 1747256400000,
"price": 1920
},
{
"date": 1747342800000,
"price": 1935
},
{
"date": 1747429200000,
"price": 1842
},
{
"date": 1747515600000,
"price": 1797
},
{
"date": 1747602000000,
"price": 1779
},
{
"date": 1747688400000,
"price": 1817
},
{
"date": 1747774800000,
"price": 1794
},
{
"date": 1747861200000,
"price": 1834
},
{
"date": 1747947600000,
"price": 1756
},
{
"date": 1748034000000,
"price": 1705
},
{
"date": 1748120400000,
"price": 1677
},
{
"date": 1748206800000,
"price": 1737
},
{
"date": 1748293200000,
"price": 1683
},
{
"date": 1748379600000,
"price": 1639
},
{
"date": 1748466000000,
"price": 1662
},
{
"date": 1748552400000,
"price": 1621
},
{
"date": 1748638800000,
"price": 1689
},
{
"date": 1748725200000,
"price": 1656
},
{
"date": 1748811600000,
"price": 1642
},
{
"date": 1748898000000,
"price": 1610
},
{
"date": 1748984400000,
"price": 1655
},
{
"date": 1749070800000,
"price": 1583
},
{
"date": 1749157200000,
"price": 1547
},
{
"date": 1749243600000,
"price": 1512
},
{
"date": 1749330000000,
"price": 1478
},
{
"date": 1749416400000,
"price": 1438
},
{
"date": 1749502800000,
"price": 1411
},
{
"date": 1749589200000,
"price": 1462
},
{
"date": 1749675600000,
"price": 1506
},
{
"date": 1749762000000,
"price": 1478
},
{
"date": 1749848400000,
"price": 1455
},
{
"date": 1749934800000,
"price": 1436
},
{
"date": 1750021200000,
"price": 1404
},
{
"date": 1750107600000,
"price": 1336
},
{
"date": 1750194000000,
"price": 1341
},
{
"date": 1750280400000,
"price": 1390
},
{
"date": 1750366800000,
"price": 1360
},
{
"date": 1750453200000,
"price": 1387
},
{
"date": 1750539600000,
"price": 1446
},
{
"date": 1750626000000,
"price": 1484
},
{
"date": 1750712400000,
"price": 1505
},
{
"date": 1750798800000,
"price": 1463
},
{
"date": 1750885200000,
"price": 1489
},
{
"date": 1750971600000,
"price": 1438
},
{
"date": 1751058000000,
"price": 1447
},
{
"date": 1751144400000,
"price": 1442
},
{
"date": 1751230800000,
"price": 1423
},
{
"date": 1751317200000,
"price": 1404
},
{
"date": 1751403600000,
"price": 1419
},
{
"date": 1751490000000,
"price": 1406
},
{
"date": 1751576400000,
"price": 1460
},
{
"date": 1751662800000,
"price": 1518
},
{
"date": 1751749200000,
"price": 1557
},
{
"date": 1751835600000,
"price": 1607
},
{
"date": 1751922000000,
"price": 1585
},
{
"date": 1752008400000,
"price": 1549
},
{
"date": 1752094800000,
"price": 1521
},
{
"date": 1752181200000,
"price": 1545
},
{
"date": 1752267600000,
"price": 1622
},
{
"date": 1752354000000,
"price": 1642
},
{
"date": 1752440400000,
"price": 1673
},
{
"date": 1752526800000,
"price": 1708
},
{
"date": 1752613200000,
"price": 1623
},
{
"date": 1752699600000,
"price": 1652
},
{
"date": 1752786000000,
"price": 1622
},
{
"date": 1752872400000,
"price": 1636
},
{
"date": 1752958800000,
"price": 1574
},
{
"date": 1753045200000,
"price": 1608
},
{
"date": 1753131600000,
"price": 1528
},
{
"date": 1753218000000,
"price": 1589
},
{
"date": 1753304400000,
"price": 1521
},
{
"date": 1753390800000,
"price": 1538
},
{
"date": 1753477200000,
"price": 1557
},
{
"date": 1753563600000,
"price": 1583
},
{
"date": 1753650000000,
"price": 1636
},
{
"date": 1753736400000,
"price": 1611
},
{
"date": 1753822800000,
"price": 1604
},
{
"date": 1753909200000,
"price": 1662
},
{
"date": 1753995600000,
"price": 1715
},
{
"date": 1754082000000,
"price": 1746
},
{
"date": 1754168400000,
"price": 1704
},
{
"date": 1754254800000,
"price": 1653
},
{
"date": 1754341200000,
"price": 1696
},
{
"date": 1754427600000,
"price": 1641
},
{
"date": 1754514000000,
"price": 1706
},
{
"date": 1754600400000,
"price": 1770
},
{
"date": 1754686800000,
"price": 1782
},
{
"date": 1754773200000,
"price": 1742
},
{
"date": 1754859600000,
"price": 1728
},
{
"date": 1754946000000,
"price": 1645
},
{
"date": 1755032400000,
"price": 1605
},
{
"date": 1755118800000,
"price": 1656
},
{
"date": 1755205200000,
"price": 1655
},
{
"date": 1755291600000,
"price": 1616
},
{
"date": 1755378000000,
"price": 1547
},
{
"date": 1755464400000,
"price": 1568
},
{
"date": 1755550800000,
"price": 1565
},
{
"date": 1755637200000,
"price": 1557
},
{
"date": 1755723600000,
"price": 1533
},
{
"date": 1755810000000,
"price": 1525
},
{
"date": 1755896400000,
"price": 1517
},
{
"date": 1755982800000,
"price": 1486
},
{
"date": 1756069200000,
"price": 1431
},
{
"date": 1756155600000,
"price": 1413
},
{
"date": 1756242000000,
"price": 1439
},
{
"date": 1756328400000,
"price": 1465
},
{
"date": 1756414800000,
"price": 1400
},
{
"date": 1756501200000,
"price": 1452
},
{
"date": 1756587600000,
"price": 1406
},
{
"date": 1756674000000,
"price": 1400
},
{
"date": 1756760400000,
"price": 1340
},
{
"date": 1756846800000,
"price": 1367
},
{
"date": 1756933200000,
"price": 1368
},
{
"date": 1757019600000,
"price": 1369
},
{
"date": 1757106000000,
"price": 1414
},
{
"date": 1757192400000,
"price": 1469
},
{
"date": 1757278800000,
"price": 1411
},
{
"date": 1757365200000,
"price": 1408
},
{
"date": 1757451600000,
"price": 1375
},
{
"date": 1757538000000,
"price": 1388
},
{
"date": 1757624400000,
"price": 1327
},
{
"date": 1757710800000,
"price": 1279
},
{
"date": 1757797200000,
"price": 1236
},
{
"date": 1757883600000,
"price": 1218
},
{
"date": 1757970000000,
"price": 1231
},
{
"date": 1758056400000,
"price": 1266
},
{
"date": 1758142800000,
"price": 1249
},
{
"date": 1758229200000,
"price": 1202
},
{
"date": 1758315600000,
"price": 1151
},
{
"date": 1758402000000,
"price": 1119
},
{
"date": 1758488400000,
"price": 1066
},
{
"date": 1758574800000,
"price": 1103
},
{
"date": 1758661200000,
"price": 1088
},
{
"date": 1758747600000,
"price": 1113
},
{
"date": 1758834000000,
"price": 1163
},
{
"date": 1758920400000,
"price": 1206
},
{
"date": 1759006800000,
"price": 1244
},
{
"date": 1759093200000,
"price": 1213
},
{
"date": 1759179600000,
"price": 1213
},
{
"date": 1759266000000,
"price": 1203
},
{
"date": 1759352400000,
"price": 1166
},
{
"date": 1759438800000,
"price": 1170
},
{
"date": 1759525200000,
"price": 1140
},
{
"date": 1759611600000,
"price": 1176
},
{
"date": 1759698000000,
"price": 1173
},
{
"date": 1759784400000,
"price": 1169
},
{
"date": 1759870800000,
"price": 1209
},
{
"date": 1759957200000,
"price": 1190
},
{
"date": 1760043600000,
"price": 1239
},
{
"date": 1760130000000,
"price": 1294
},
{
"date": 1760216400000,
"price": 1270
},
{
"date": 1760302800000,
"price": 1303
},
{
"date": 1760389200000,
"price": 1340
},
{
"date": 1760475600000,
"price": 1316
},
{
"date": 1760562000000,
"price": 1343
},
{
"date": 1760648400000,
"price": 1364
},
{
"date": 1760734800000,
"price": 1378
},
{
"date": 1760821200000,
"price": 1347
},
{
"date": 1760907600000,
"price": 1302
},
{
"date": 1760994000000,
"price": 1241
},
{
"date": 1761080400000,
"price": 1189
},
{
"date": 1761166800000,
"price": 1234
},
{
"date": 1761253200000,
"price": 1290
},
{
"date": 1761339600000,
"price": 1264
},
{
"date": 1761426000000,
"price": 1226
},
{
"date": 1761516000000,
"price": 1200
},
{
"date": 1761602400000,
"price": 1243
},
{
"date": 1761688800000,
"price": 1230
},
{
"date": 1761775200000,
"price": 1248
},
{
"date": 1761861600000,
"price": 1186
},
{
"date": 1761948000000,
"price": 1237
},
{
"date": 1762034400000,
"price": 1265
},
{
"date": 1762120800000,
"price": 1216
},
{
"date": 1762207200000,
"price": 1260
},
{
"date": 1762293600000,
"price": 1216
},
{
"date": 1762380000000,
"price": 1169
},
{
"date": 1762466400000,
"price": 1166
},
{
"date": 1762552800000,
"price": 1186
},
{
"date": 1762639200000,
"price": 1221
},
{
"date": 1762725600000,
"price": 1260
},
{
"date": 1762812000000,
"price": 1255
},
{
"date": 1762898400000,
"price": 1293
},
{
"date": 1762984800000,
"price": 1298
},
{
"date": 1763071200000,
"price": 1281
},
{
"date": 1763157600000,
"price": 1295
},
{
"date": 1763244000000,
"price": 1304
},
{
"date": 1763330400000,
"price": 1282
},
{
"date": 1763416800000,
"price": 1234
},
{
"date": 1763503200000,
"price": 1208
},
{
"date": 1763589600000,
"price": 1230
},
{
"date": 1763676000000,
"price": 1210
},
{
"date": 1763762400000,
"price": 1228
},
{
"date": 1763848800000,
"price": 1251
},
{
"date": 1763935200000,
"price": 1199
},
{
"date": 1764021600000,
"price": 1217
},
{
"date": 1764108000000,
"price": 1223
},
{
"date": 1764194400000,
"price": 1217
},
{
"date": 1764280800000,
"price": 1268
},
{
"date": 1764367200000,
"price": 1256
},
{
"date": 1764453600000,
"price": 1265
},
{
"date": 1764540000000,
"price": 1211
},
{
"date": 1764626400000,
"price": 1224
},
{
"date": 1764712800000,
"price": 1234
},
{
"date": 1764799200000,
"price": 1231
},
{
"date": 1764885600000,
"price": 1280
},
{
"date": 1764972000000,
"price": 1230
},
{
"date": 1765058400000,
"price": 1248
},
{
"date": 1765144800000,
"price": 1305
},
{
"date": 1765231200000,
"price": 1253
},
{
"date": 1765317600000,
"price": 1206
},
{
"date": 1765404000000,
"price": 1176
},
{
"date": 1765490400000,
"price": 1234
},
{
"date": 1765576800000,
"price": 1217
},
{
"date": 1765663200000,
"price": 1271
},
{
"date": 1765749600000,
"price": 1315
},
{
"date": 1765836000000,
"price": 1327
},
{
"date": 1765922400000,
"price": 1316
},
{
"date": 1766008800000,
"price": 1374
},
{
"date": 1766095200000,
"price": 1356
},
{
"date": 1766181600000,
"price": 1315
},
{
"date": 1766268000000,
"price": 1292
},
{
"date": 1766354400000,
"price": 1341
},
{
"date": 1766440800000,
"price": 1306
},
{
"date": 1766527200000,
"price": 1335
},
{
"date": 1766613600000,
"price": 1326
},
{
"date": 1766700000000,
"price": 1314
}
]
},
{
"axis-0": {
"type": "DateAxis",
"settings": {
"baseInterval": {
"timeUnit": "day",
"count": 1
},
"renderer": {
"type": "AxisRendererX",
"properties": {
"labels": {
"properties": {
"template": {
"settings": {
"fill": "@root.interfaceColors.get('primaryButton')"
}
}
}
}
}
},
"tooltip": {
"type": "Tooltip"
},
"tooltipDateFormat": "yyyy-MM-dd"
}
}
},
{
"axis-1": {
"type": "DateAxis",
"settings": {
"marginTop": 10,
"baseInterval": {
"timeUnit": "day",
"count": 1
},
"renderer": {
"type": "AxisRendererX",
"properties": {
"labels": {
"properties": {
"template": {
"settings": {
"fill": "@colors.getIndex(1)"
}
}
}
}
}
},
"tooltip": {
"type": "Tooltip"
},
"tooltipDateFormat": "yyyy-MM-dd"
}
}
},
{
"axis-2": {
"type": "ValueAxis",
"settings": {
"renderer": {
"type": "AxisRendererY",
"properties": {
"labels": {
"properties": {
"template": {
"settings": {
"minPosition": 0.05
}
}
}
}
}
}
}
}
},
{
"axis-3": {
"type": "DateAxis",
"settings": {
"baseInterval": {
"timeUnit": "day",
"count": 1
},
"renderer": {
"type": "AxisRendererX"
}
}
}
},
{
"axis-4": {
"type": "ValueAxis",
"settings": {
"renderer": {
"type": "AxisRendererY"
}
}
}
},
{
"series-0": {
"type": "LineSeries",
"settings": {
"name": "2023",
"xAxis": "#axis-0",
"yAxis": "#axis-2",
"valueYField": "price",
"valueXField": "date",
"tooltip": {
"type": "Tooltip",
"settings": {
"labelText": "{name}: {valueY}"
}
}
},
"properties": {
"data": "#data-0"
}
}
},
{
"series-1": {
"type": "LineSeries",
"settings": {
"name": "2025",
"xAxis": "#axis-1",
"yAxis": "#axis-2",
"valueYField": "price",
"valueXField": "date",
"tooltip": {
"type": "Tooltip",
"settings": {
"labelText": "{name}: {valueY}"
}
}
},
"properties": {
"data": "#data-1"
}
}
},
{
"series-2": {
"type": "LineSeries",
"settings": {
"valueYField": "price",
"valueXField": "date",
"xAxis": "#axis-3",
"yAxis": "#axis-4"
},
"properties": {
"data": "#data-0"
}
}
}
]
}



