Public
Edited
Apr 25
Insert cell
Insert cell
Insert cell
Insert cell
viewof selection2 = {
const b = builder(bangkokIndex2024)
.column(LineUpJS.buildStringColumn('เขต').label('เขต').width(100))
.column(LineUpJS.buildNumberColumn('สาธารณสุข', [0, 50]).color('SkyBlue'))
.column(LineUpJS.buildNumberColumn('ขนส่งสาธารณะ', [0, 50]).color('DodgerBlue'))
.column(LineUpJS.buildNumberColumn('การศึกษา', [0, 50]).color('SkyBlue'))
.column(LineUpJS.buildNumberColumn('คุณภาพชีวิต', [0, 50]).color('DodgerBlue'))
.column(LineUpJS.buildNumberColumn('งบประมาณรายเขต', [0, 50]).color('gold'))
.column(LineUpJS.buildNumberColumn('รายได้จากการจัดเก็บภาษี', [0, 50]).color('darkorange'))
.column(LineUpJS.buildNumberColumn('การจดทะเบียนธุรกิจ', [0, 50]).color('gold'))
.column(LineUpJS.buildNumberColumn('สถานประกอบการอาหาร', [0, 50]).color('darkorange'))
.column(LineUpJS.buildNumberColumn('อัคคีภัย', [0, 50]).color('pink'))
.column(LineUpJS.buildNumberColumn('อุทกภัย', [0, 50]).color('HotPink'))
.column(LineUpJS.buildNumberColumn('จุดเสี่ยงอาชญากรรม', [0, 50]).color('pink'))
.column(LineUpJS.buildNumberColumn('อุบัติเหตุบนท้องถนน', [0, 50]).color('HotPink'))
.column(LineUpJS.buildNumberColumn('ขยะ', [0, 50]).color('lightgreen'))
.column(LineUpJS.buildNumberColumn('น้ำเสีย', [0, 50]).color('MediumSeaGreen'))
.column(LineUpJS.buildNumberColumn('อากาศ', [0, 50]).color('lightgreen'))
.column(LineUpJS.buildNumberColumn('สวนสาธารณะ', [0, 50]).color('MediumSeaGreen'))

// and two rankings
const ranking = LineUpJS.buildRanking()
.supportTypes()
// .allColumns() // add all columns
.weightedSum('บริการสาธารณะ', 'สาธารณสุข', 1, 'ขนส่งสาธารณะ', 1, 'การศึกษา', 1, 'คุณภาพชีวิต', 1)
.weightedSum('เศรษฐกิจ', 'งบประมาณรายเขต', 1, 'รายได้จากการจัดเก็บภาษี', 1, 'การจดทะเบียนธุรกิจ', 1, 'สถานประกอบการอาหาร', 1)
.weightedSum('สวัสดิภาพ', 'อัคคีภัย', 1, 'อุทกภัย', 1, 'จุดเสี่ยงอาชญากรรม', 1, 'อุบัติเหตุบนท้องถนน', 1)
.weightedSum('สิ่งแวดล้อม', 'ขยะ', 1, 'น้ำเสีย', 1, 'อากาศ', 1, 'สวนสาธารณะ', 1)
.sortBy('บริการสาธารณะ', 'desc');

b.defaultRanking().ranking(ranking);
return b.build();
}
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