Liveweave: Generative AI Web Editor & HTML/CSS/JS Playground
Initializing
Liveweave
Web
expand_more
home
Home
Palette
Color Explorer
arrow_outward
Polyline
Graphics Editor
arrow_outward
frame_source
Python Playground
arrow_outward
build
Tools
expand_more
restart_alt
Load "Hello Weaver!"
post_add
Generate Lorem ipsum...
code
Format HTML
code_blocks
Format CSS
data_object
Format JavaScript
library_add
Library
expand_more
A
Algolia JS
Animate CSS
Apex Charts JS
B
Bulma CSS
Bootstrap
C
Chart JS
Chartist
Create JS
D
D3
Dojo
F
Foundation
Fullpage JS
G
Granim JS
Google Charts
H
Halfmoon
J
jQuery
M
Materialize
Moment JS
Masonry JS
Milligram CSS
P
Pure CSS
Primer CSS
Popper JS
Pattern CSS
Picnic CSS
R
React JS
Raphael JS
Raisin CSS
S
Semantic UI
Skeleton CSS
Spectre CSS
Tachyons CSS
T
Tailwind
Three JS
U
UI Kit
Vis JS
W
Water CSS
download
Download
expand_more
developer_mode
Download as HTML
folder_zip
Download as .ZIP
cloud_upload
Fork
account_circle
Login
settings
Settings
expand_more
Editor font
14
px
A
A
Line number
Mini map
Word wrap
sync_alt
Reset Settings
smart_display
Run
left_panel_close
AI Assistant
dashboard
All
HTML
CSS
JS
visibility
Preview
bolt
Live Preview
terminal
JS Console
<!DOCTYPE html> <html> <head> <title>HighCharts Streamgraph Chart</title> <script src="https://code.highcharts.com/highcharts.js"></script> <script src="https://code.highcharts.com/modules/streamgraph.js"></script> <script src="https://code.highcharts.com/modules/series-label.js"></script> <script src="https://code.highcharts.com/modules/annotations.js"></script> <script src="https://code.highcharts.com/modules/exporting.js"></script> <script src="https://code.highcharts.com/modules/export-data.js"></script> </head> <body> <!-- Start your code here --> <figure class="highcharts-figure"> <div id="container"></div> <p class="highcharts-description"> Streamgraphs are a type of stacked area charts where the areas are displaced around a central axis. It is often used for displaying compound volume across different categories or over time. This demo visualizes the number of medals earned in the Winter Olympic Games for each participating country since 1924, using a relative scale. </p> </figure> <!-- End your code here --> </body> </html>
#container { height: 600px; } .highcharts-figure, .highcharts-data-table table { min-width: 310px; max-width: 800px; overflow: auto; margin: 1em auto; } .highcharts-data-table table { font-family: Verdana, sans-serif; border-collapse: collapse; border: 1px solid #ebebeb; margin: 10px auto; text-align: center; width: 100%; max-width: 500px; } .highcharts-data-table caption { padding: 1em 0; font-size: 1.2em; color: #555; } .highcharts-data-table th { font-weight: 600; padding: 0.5em; } .highcharts-data-table td, .highcharts-data-table th, .highcharts-data-table caption { padding: 0.5em; } .highcharts-data-table thead tr, .highcharts-data-table tr:nth-child(even) { background: #f8f8f8; } .highcharts-data-table tr:hover { background: #f1f7ff; }
const colors = Highcharts.getOptions().colors; Highcharts.chart('container', { chart: { type: 'streamgraph', marginBottom: 30, zooming: { type: 'x' } }, // Make sure connected countries have similar colors colors: [ colors[0], colors[1], colors[2], colors[3], colors[4], // East Germany, West Germany and Germany Highcharts.color(colors[5]).brighten(0.2).get(), Highcharts.color(colors[5]).brighten(0.1).get(), colors[5], colors[6], colors[7], colors[8], colors[9], colors[0], colors[1], colors[3], // Soviet Union, Russia Highcharts.color(colors[2]).brighten(-0.1).get(), Highcharts.color(colors[2]).brighten(-0.2).get(), Highcharts.color(colors[2]).brighten(-0.3).get() ], title: { floating: true, align: 'left', text: 'Winter Olympic Medal Wins' }, subtitle: { floating: true, align: 'left', y: 30, text: 'Source: <a href="https://www.sports-reference.com/olympics/winter/1924/">sports-reference.com</a>' }, xAxis: { maxPadding: 0, type: 'category', crosshair: true, categories: [ '', '1924 Chamonix', '1928 St. Moritz', '1932 Lake Placid', '1936 Garmisch-Partenkirchen', '1940 <i>Cancelled (Sapporo)</i>', '1944 <i>Cancelled (Cortina d\'Ampezzo)</i>', '1948 St. Moritz', '1952 Oslo', '1956 Cortina d\'Ampezzo', '1960 Squaw Valley', '1964 Innsbruck', '1968 Grenoble', '1972 Sapporo', '1976 Innsbruck', '1980 Lake Placid', '1984 Sarajevo', '1988 Calgary', '1992 Albertville', '1994 Lillehammer', '1998 Nagano', '2002 Salt Lake City', '2006 Turin', '2010 Vancouver', '2014 Sochi' ], labels: { align: 'left', reserveSpace: false, rotation: 270 }, lineWidth: 0, margin: 20, tickWidth: 0 }, yAxis: { visible: false, startOnTick: false, endOnTick: false }, legend: { enabled: false }, annotations: [{ labels: [{ point: { x: 5.5, xAxis: 0, y: 30, yAxis: 0 }, text: 'Cancelled<br>during<br>World War II' }, { point: { x: 18, xAxis: 0, y: 90, yAxis: 0 }, text: 'Soviet Union fell,<br>Germany united' }], labelOptions: { backgroundColor: 'rgba(255,255,255,0.5)', borderColor: 'silver' } }], plotOptions: { series: { label: { minFontSize: 5, maxFontSize: 15, style: { color: 'rgba(255,255,255,0.75)' } }, accessibility: { exposeAsGroupOnly: true } } }, // Data parsed with olympic-medals.node.js series: [{ name: 'Finland', data: [ 0, 11, 4, 3, 6, 0, 0, 6, 9, 7, 8, 10, 5, 5, 7, 9, 13, 7, 7, 6, 12, 7, 9, 5, 5 ] }, { name: 'Austria', data: [ 0, 3, 4, 2, 4, 0, 0, 8, 8, 11, 6, 12, 11, 5, 6, 7, 1, 10, 21, 9, 17, 17, 23, 16, 17 ] }, { name: 'Sweden', data: [ 0, 2, 5, 3, 7, 0, 0, 10, 4, 10, 7, 7, 8, 4, 2, 4, 8, 6, 4, 3, 3, 7, 14, 11, 15 ] }, { name: 'Norway', data: [ 0, 17, 15, 10, 15, 0, 0, 10, 16, 4, 6, 15, 14, 12, 7, 10, 9, 5, 20, 26, 25, 25, 19, 23, 26 ] }, { name: 'U.S.', data: [ 0, 4, 6, 12, 4, 0, 0, 9, 11, 7, 10, 7, 7, 8, 10, 12, 8, 6, 11, 13, 13, 34, 25, 37, 28 ] }, { name: 'East Germany', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 14, 19, 23, 24, 25, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'West Germany', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 5, 10, 5, 4, 8, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'Germany', data: [ 0, 0, 1, 2, 6, 0, 0, 0, 7, 2, 8, 9, 0, 0, 0, 0, 0, 0, 26, 24, 29, 36, 29, 30, 19 ] }, { name: 'Netherlands', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 2, 2, 9, 9, 6, 4, 0, 7, 4, 4, 11, 8, 9, 8, 24 ] }, { name: 'Italy', data: [ 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 1, 4, 4, 5, 4, 2, 2, 5, 14, 20, 10, 13, 11, 5, 8 ] }, { name: 'Canada', data: [ 0, 1, 1, 7, 1, 0, 0, 3, 2, 3, 4, 3, 3, 1, 3, 2, 4, 5, 7, 13, 15, 17, 24, 26, 25 ] }, { name: 'Switzerland', data: [ 0, 3, 1, 1, 3, 0, 0, 10, 2, 6, 2, 0, 6, 10, 5, 5, 5, 15, 3, 9, 7, 11, 14, 9, 11 ] }, { name: 'Great Britain', data: [ 0, 4, 1, 0, 3, 0, 0, 2, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 2, 1, 2, 1, 1, 4 ] }, { name: 'France', data: [ 0, 3, 1, 1, 1, 0, 0, 5, 1, 0, 3, 7, 9, 3, 1, 1, 3, 2, 9, 5, 8, 11, 9, 11, 15 ] }, { name: 'Hungary', data: [ 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'Unified Team', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0 ] }, { name: 'Soviet Union', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 21, 25, 13, 16, 27, 22, 25, 29, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'Russia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 18, 13, 22, 15, 33 ] }, { name: 'Japan', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 3, 0, 1, 1, 1, 7, 5, 10, 2, 1, 5, 8 ] }, { name: 'Czechoslovakia', data: [ 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 4, 3, 1, 1, 6, 3, 3, 0, 0, 0, 0, 0, 0 ] }, { name: 'Poland', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 2, 2, 6, 6 ] }, { name: 'Spain', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 ] }, { name: 'China', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 8, 8, 11, 11, 9 ] }, { name: 'South Korea', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6, 6, 4, 11, 14, 8 ] }, { name: 'Czech Republic', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 4, 6, 8 ] }, { name: 'Belarus', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 1, 3, 6 ] }, { name: 'Kazakhstan', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 0, 0, 1, 1 ] }, { name: 'Bulgaria', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 3, 1, 0, 0 ] }, { name: 'Denmark', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 ] }, { name: 'Ukraine', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 2, 0, 2 ] }, { name: 'Australia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 3, 3 ] }, { name: 'Belgium', data: [ 0, 1, 1, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 ] }, { name: 'Romania', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'Liechtenstein', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 2, 1, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'Yugoslavia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 0, 0 ] }, { name: 'Luxembourg', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0 ] }, { name: 'New Zealand', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 ] }, { name: 'North Korea', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 ] }, { name: 'Slovakia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 1 ] }, { name: 'Croatia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 3, 3, 1 ] }, { name: 'Slovenia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 1, 0, 3, 8 ] }, { name: 'Latvia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 4 ] }, { name: 'Estonia', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 1, 0 ] }, { name: 'Uzbekistan', data: [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 ] }], exporting: { sourceWidth: 800, sourceHeight: 600 } });
terminal
JavaScript Console
Preview
Clear
close
›
Run