Public
Edited
Nov 11, 2022
Insert cell
md `# Stack Covid-19 MY Charts by States`
Insert cell
viewof casebyState3 = rangeSlider(casebyState2, d=>d.date)
Insert cell
Insert cell
Insert cell
## New cases of all states stacked

Insert cell
Insert cell
Insert cell
url = "https://raw.githubusercontent.com/MoH-Malaysia/covid19-public/main/epidemic/cases_state.csv"
Insert cell
casebyState = await d3.csv(url)
Insert cell
dateParser = d3.timeParse("%Y-%m-%d")
Insert cell
//startDate = dateParser(casebyState[0].date)
Insert cell
//endDate = dateParser(casebyState[7919].date)
Insert cell
Insert cell
stateList = _.uniqBy(casebyState, d => d.state)
.map(d => d.state)
Insert cell
stateList2 = []
Insert cell
stateList2[0] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[0] )
Insert cell
stateList2[1] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[1] )
Insert cell
stateList2[2] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[2] )
Insert cell
stateList2[3] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[3] )
Insert cell
stateList2[4] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[4] )
Insert cell
stateList2[5]= casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[5] )
Insert cell
stateList2[6] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[6] )
Insert cell
stateList2[7] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[7] )
Insert cell
stateList2[8] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[8] )
Insert cell
stateList2[9] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[9] )
Insert cell
stateList2[10] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[10] )
Insert cell
stateList2[11] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[11] )
Insert cell
stateList2[12] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[12] )
Insert cell
stateList2[13] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[13] )
Insert cell
stateList2[14] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[14] )
Insert cell
stateList2[15] = casebyState.map( d => (
{
date: dateParser(d.date),
state: d.state,
newCases: d.cases_new
}
)
)
.filter(d => d.state == stateList[15] )
Insert cell
import {rangeSlider} from "@bumbeishvili/utils"
Insert cell
import {swatches as Swatches} from "@d3/color-legend"
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more