diff --git a/Hotels_Amsterdam_v4(may2026)_charts_feedback.ipynb b/Hotels_Amsterdam_v4(may2026)_charts_feedback.ipynb
new file mode 100644
index 0000000..1b72476
--- /dev/null
+++ b/Hotels_Amsterdam_v4(may2026)_charts_feedback.ipynb
@@ -0,0 +1,26051 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "d6bdc083",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import numpy as np"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "299dcb79",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df_hotels = pd.read_csv(\"data/Amsterdam_hotels_220(may2026).csv\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "04efc9d3",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " name | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " currency | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2193502 | \n",
+ " Hyatt Regency Amsterdam | \n",
+ " 0 | \n",
+ " 5 | \n",
+ " 8.4 | \n",
+ " 2869 | \n",
+ " 580.969519 | \n",
+ " USD | \n",
+ " 52.361798 | \n",
+ " 4.911744 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 10014507 | \n",
+ " Chasse Residency Hotel | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " 8.9 | \n",
+ " 3874 | \n",
+ " 303.130889 | \n",
+ " USD | \n",
+ " 52.351902 | \n",
+ " 4.924964 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 10502 | \n",
+ " Swissôtel Amsterdam | \n",
+ " 2 | \n",
+ " 4 | \n",
+ " 8.1 | \n",
+ " 3679 | \n",
+ " 432.324478 | \n",
+ " USD | \n",
+ " 52.373502 | \n",
+ " 4.893312 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4827244 | \n",
+ " Holiday Inn - the niu, Fender Amsterdam | \n",
+ " 3 | \n",
+ " 4 | \n",
+ " 8.4 | \n",
+ " 4817 | \n",
+ " 244.403195 | \n",
+ " USD | \n",
+ " 52.368967 | \n",
+ " 4.946342 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 6331862 | \n",
+ " Holiday Inn Express Amsterdam - North Riversid... | \n",
+ " 4 | \n",
+ " 3 | \n",
+ " 8.2 | \n",
+ " 12096 | \n",
+ " 233.489996 | \n",
+ " USD | \n",
+ " 52.384104 | \n",
+ " 4.919524 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id name \\\n",
+ "0 2193502 Hyatt Regency Amsterdam \n",
+ "1 10014507 Chasse Residency Hotel \n",
+ "2 10502 Swissôtel Amsterdam \n",
+ "3 4827244 Holiday Inn - the niu, Fender Amsterdam \n",
+ "4 6331862 Holiday Inn Express Amsterdam - North Riversid... \n",
+ "\n",
+ " ranking_position stars review_score review_count price currency \\\n",
+ "0 0 5 8.4 2869 580.969519 USD \n",
+ "1 1 4 8.9 3874 303.130889 USD \n",
+ "2 2 4 8.1 3679 432.324478 USD \n",
+ "3 3 4 8.4 4817 244.403195 USD \n",
+ "4 4 3 8.2 12096 233.489996 USD \n",
+ "\n",
+ " latitude longitude \n",
+ "0 52.361798 4.911744 \n",
+ "1 52.351902 4.924964 \n",
+ "2 52.373502 4.893312 \n",
+ "3 52.368967 4.946342 \n",
+ "4 52.384104 4.919524 "
+ ]
+ },
+ "execution_count": 4,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "6cf5ccc1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " name | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " currency | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 0 | \n",
+ " 2193502 | \n",
+ " Hyatt Regency Amsterdam | \n",
+ " 0 | \n",
+ " 5 | \n",
+ " 8.4 | \n",
+ " 2869 | \n",
+ " 580.97 | \n",
+ " USD | \n",
+ " 52.361798 | \n",
+ " 4.911744 | \n",
+ "
\n",
+ " \n",
+ " | 1 | \n",
+ " 10014507 | \n",
+ " Chasse Residency Hotel | \n",
+ " 1 | \n",
+ " 4 | \n",
+ " 8.9 | \n",
+ " 3874 | \n",
+ " 303.13 | \n",
+ " USD | \n",
+ " 52.351902 | \n",
+ " 4.924964 | \n",
+ "
\n",
+ " \n",
+ " | 2 | \n",
+ " 10502 | \n",
+ " Swissôtel Amsterdam | \n",
+ " 2 | \n",
+ " 4 | \n",
+ " 8.1 | \n",
+ " 3679 | \n",
+ " 432.32 | \n",
+ " USD | \n",
+ " 52.373502 | \n",
+ " 4.893312 | \n",
+ "
\n",
+ " \n",
+ " | 3 | \n",
+ " 4827244 | \n",
+ " Holiday Inn - the niu, Fender Amsterdam | \n",
+ " 3 | \n",
+ " 4 | \n",
+ " 8.4 | \n",
+ " 4817 | \n",
+ " 244.40 | \n",
+ " USD | \n",
+ " 52.368967 | \n",
+ " 4.946342 | \n",
+ "
\n",
+ " \n",
+ " | 4 | \n",
+ " 6331862 | \n",
+ " Holiday Inn Express Amsterdam - North Riversid... | \n",
+ " 4 | \n",
+ " 3 | \n",
+ " 8.2 | \n",
+ " 12096 | \n",
+ " 233.49 | \n",
+ " USD | \n",
+ " 52.384104 | \n",
+ " 4.919524 | \n",
+ "
\n",
+ " \n",
+ " | 5 | \n",
+ " 11524 | \n",
+ " Mövenpick Hotel Amsterdam City Centre | \n",
+ " 5 | \n",
+ " 4 | \n",
+ " 8.5 | \n",
+ " 6343 | \n",
+ " 383.23 | \n",
+ " USD | \n",
+ " 52.377824 | \n",
+ " 4.914142 | \n",
+ "
\n",
+ " \n",
+ " | 6 | \n",
+ " 14238858 | \n",
+ " Hotel V Oosterpark | \n",
+ " 6 | \n",
+ " 4 | \n",
+ " 8.9 | \n",
+ " 134 | \n",
+ " 439.00 | \n",
+ " USD | \n",
+ " 52.361870 | \n",
+ " 4.922707 | \n",
+ "
\n",
+ " \n",
+ " | 7 | \n",
+ " 535637 | \n",
+ " Hans Brinker Hostel Amsterdam | \n",
+ " 7 | \n",
+ " 0 | \n",
+ " 8.0 | \n",
+ " 12687 | \n",
+ " 359.75 | \n",
+ " USD | \n",
+ " 52.363679 | \n",
+ " 4.888055 | \n",
+ "
\n",
+ " \n",
+ " | 8 | \n",
+ " 9371917 | \n",
+ " Citadines Canal Amsterdam | \n",
+ " 8 | \n",
+ " 4 | \n",
+ " 8.8 | \n",
+ " 1735 | \n",
+ " 406.07 | \n",
+ " USD | \n",
+ " 52.361026 | \n",
+ " 4.893588 | \n",
+ "
\n",
+ " \n",
+ " | 9 | \n",
+ " 10422 | \n",
+ " ibis Amsterdam Centre | \n",
+ " 9 | \n",
+ " 3 | \n",
+ " 7.7 | \n",
+ " 9837 | \n",
+ " 374.75 | \n",
+ " USD | \n",
+ " 52.379542 | \n",
+ " 4.896965 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 10643 | \n",
+ " Renaissance Amsterdam Hotel | \n",
+ " 10 | \n",
+ " 0 | \n",
+ " 8.0 | \n",
+ " 660 | \n",
+ " 495.09 | \n",
+ " USD | \n",
+ " 52.377768 | \n",
+ " 4.894381 | \n",
+ "
\n",
+ " \n",
+ " | 11 | \n",
+ " 298608 | \n",
+ " Hotel Van Gogh | \n",
+ " 11 | \n",
+ " 3 | \n",
+ " 8.2 | \n",
+ " 4758 | \n",
+ " 363.57 | \n",
+ " USD | \n",
+ " 52.359056 | \n",
+ " 4.880149 | \n",
+ "
\n",
+ " \n",
+ " | 12 | \n",
+ " 1392565 | \n",
+ " Mercure Amsterdam Sloterdijk Station | \n",
+ " 12 | \n",
+ " 4 | \n",
+ " 8.5 | \n",
+ " 5026 | \n",
+ " 250.07 | \n",
+ " USD | \n",
+ " 52.387911 | \n",
+ " 4.834296 | \n",
+ "
\n",
+ " \n",
+ " | 13 | \n",
+ " 1926560 | \n",
+ " Ruby Emma Hotel Amsterdam | \n",
+ " 13 | \n",
+ " 4 | \n",
+ " 8.7 | \n",
+ " 8811 | \n",
+ " 243.83 | \n",
+ " USD | \n",
+ " 52.338347 | \n",
+ " 4.920860 | \n",
+ "
\n",
+ " \n",
+ " | 14 | \n",
+ " 545708 | \n",
+ " Hampton By Hilton Amsterdam Arena Boulevard | \n",
+ " 14 | \n",
+ " 3 | \n",
+ " 8.1 | \n",
+ " 13132 | \n",
+ " 235.57 | \n",
+ " USD | \n",
+ " 52.313060 | \n",
+ " 4.948094 | \n",
+ "
\n",
+ " \n",
+ " | 15 | \n",
+ " 10442 | \n",
+ " Park Plaza Victoria Amsterdam | \n",
+ " 15 | \n",
+ " 4 | \n",
+ " 8.6 | \n",
+ " 8717 | \n",
+ " 489.82 | \n",
+ " USD | \n",
+ " 52.377348 | \n",
+ " 4.897775 | \n",
+ "
\n",
+ " \n",
+ " | 16 | \n",
+ " 7060204 | \n",
+ " Inntel Hotels Amsterdam Landmark | \n",
+ " 16 | \n",
+ " 4 | \n",
+ " 8.2 | \n",
+ " 10359 | \n",
+ " 291.52 | \n",
+ " USD | \n",
+ " 52.373440 | \n",
+ " 4.928435 | \n",
+ "
\n",
+ " \n",
+ " | 17 | \n",
+ " 10130 | \n",
+ " Apollo Hotel Amsterdam, a Tribute Portfolio Hotel | \n",
+ " 17 | \n",
+ " 4 | \n",
+ " 8.5 | \n",
+ " 1343 | \n",
+ " 283.23 | \n",
+ " USD | \n",
+ " 52.348573 | \n",
+ " 4.885107 | \n",
+ "
\n",
+ " \n",
+ " | 18 | \n",
+ " 288883 | \n",
+ " DoubleTree by Hilton Amsterdam Centraal Station | \n",
+ " 18 | \n",
+ " 4 | \n",
+ " 8.3 | \n",
+ " 1052 | \n",
+ " 318.95 | \n",
+ " USD | \n",
+ " 52.376713 | \n",
+ " 4.905669 | \n",
+ "
\n",
+ " \n",
+ " | 19 | \n",
+ " 1042748 | \n",
+ " Holiday Inn Express Amsterdam Arena Towers by IHG | \n",
+ " 19 | \n",
+ " 3 | \n",
+ " 7.9 | \n",
+ " 17901 | \n",
+ " 210.65 | \n",
+ " USD | \n",
+ " 52.309578 | \n",
+ " 4.941870 | \n",
+ "
\n",
+ " \n",
+ " | 20 | \n",
+ " 11616 | \n",
+ " ITC Hotel | \n",
+ " 0 | \n",
+ " 2 | \n",
+ " 7.2 | \n",
+ " 2144 | \n",
+ " 466.54 | \n",
+ " USD | \n",
+ " 52.362225 | \n",
+ " 4.898582 | \n",
+ "
\n",
+ " \n",
+ " | 21 | \n",
+ " 3041919 | \n",
+ " Holiday Inn Express Amsterdam - City Hall by IHG | \n",
+ " 1 | \n",
+ " 3 | \n",
+ " 8.3 | \n",
+ " 3203 | \n",
+ " 517.74 | \n",
+ " USD | \n",
+ " 52.370508 | \n",
+ " 4.908350 | \n",
+ "
\n",
+ " \n",
+ " | 22 | \n",
+ " 2007116 | \n",
+ " Sir Adam Hotel, part of Sircle Collection | \n",
+ " 2 | \n",
+ " 4 | \n",
+ " 8.7 | \n",
+ " 1361 | \n",
+ " 369.27 | \n",
+ " USD | \n",
+ " 52.383784 | \n",
+ " 4.902409 | \n",
+ "
\n",
+ " \n",
+ " | 23 | \n",
+ " 10170543 | \n",
+ " Bob W Amsterdam Noord | \n",
+ " 3 | \n",
+ " 4 | \n",
+ " 8.6 | \n",
+ " 3464 | \n",
+ " 402.02 | \n",
+ " USD | \n",
+ " 52.396594 | \n",
+ " 4.906841 | \n",
+ "
\n",
+ " \n",
+ " | 24 | \n",
+ " 2742213 | \n",
+ " Monet Garden Hotel Amsterdam | \n",
+ " 4 | \n",
+ " 4 | \n",
+ " 9.1 | \n",
+ " 3901 | \n",
+ " 385.54 | \n",
+ " USD | \n",
+ " 52.369788 | \n",
+ " 4.907262 | \n",
+ "
\n",
+ " \n",
+ " | 25 | \n",
+ " 10002879 | \n",
+ " Bob W Oosterpark | \n",
+ " 5 | \n",
+ " 4 | \n",
+ " 8.6 | \n",
+ " 978 | \n",
+ " 286.66 | \n",
+ " USD | \n",
+ " 52.354949 | \n",
+ " 4.928503 | \n",
+ "
\n",
+ " \n",
+ " | 26 | \n",
+ " 341228 | \n",
+ " Holiday Inn Express Amsterdam - Sloterdijk Sta... | \n",
+ " 6 | \n",
+ " 3 | \n",
+ " 8.1 | \n",
+ " 9671 | \n",
+ " 201.77 | \n",
+ " USD | \n",
+ " 52.388202 | \n",
+ " 4.837455 | \n",
+ "
\n",
+ " \n",
+ " | 27 | \n",
+ " 2593669 | \n",
+ " Via Amsterdam | \n",
+ " 7 | \n",
+ " 3 | \n",
+ " 8.1 | \n",
+ " 15319 | \n",
+ " 180.16 | \n",
+ " USD | \n",
+ " 52.326207 | \n",
+ " 4.953709 | \n",
+ "
\n",
+ " \n",
+ " | 28 | \n",
+ " 3693027 | \n",
+ " Postillion Hotel Amsterdam | \n",
+ " 8 | \n",
+ " 4 | \n",
+ " 8.5 | \n",
+ " 10289 | \n",
+ " 231.36 | \n",
+ " USD | \n",
+ " 52.333612 | \n",
+ " 4.922194 | \n",
+ "
\n",
+ " \n",
+ " | 29 | \n",
+ " 235613 | \n",
+ " Hotel Hortus | \n",
+ " 9 | \n",
+ " 0 | \n",
+ " 8.0 | \n",
+ " 3553 | \n",
+ " 241.10 | \n",
+ " USD | \n",
+ " 52.366771 | \n",
+ " 4.909050 | \n",
+ "
\n",
+ " \n",
+ " | 30 | \n",
+ " 2293774 | \n",
+ " Park Inn by Radisson Amsterdam City West | \n",
+ " 10 | \n",
+ " 4 | \n",
+ " 8.4 | \n",
+ " 20821 | \n",
+ " 225.43 | \n",
+ " USD | \n",
+ " 52.390137 | \n",
+ " 4.842565 | \n",
+ "
\n",
+ " \n",
+ " | 31 | \n",
+ " 1092100 | \n",
+ " XO Hotels Couture | \n",
+ " 11 | \n",
+ " 4 | \n",
+ " 8.7 | \n",
+ " 9124 | \n",
+ " 201.28 | \n",
+ " USD | \n",
+ " 52.351104 | \n",
+ " 4.841254 | \n",
+ "
\n",
+ " \n",
+ " | 32 | \n",
+ " 5737589 | \n",
+ " Clayton Hotel Amsterdam American | \n",
+ " 12 | \n",
+ " 4 | \n",
+ " 8.5 | \n",
+ " 4538 | \n",
+ " 451.23 | \n",
+ " USD | \n",
+ " 52.363893 | \n",
+ " 4.881296 | \n",
+ "
\n",
+ " \n",
+ " | 33 | \n",
+ " 866477 | \n",
+ " DoubleTree by Hilton Amsterdam - NDSM Wharf | \n",
+ " 13 | \n",
+ " 4 | \n",
+ " 8.5 | \n",
+ " 3036 | \n",
+ " 321.46 | \n",
+ " USD | \n",
+ " 52.400657 | \n",
+ " 4.893502 | \n",
+ "
\n",
+ " \n",
+ " | 34 | \n",
+ " 4609378 | \n",
+ " Olympic Hotel | \n",
+ " 14 | \n",
+ " 4 | \n",
+ " 8.6 | \n",
+ " 8693 | \n",
+ " 261.53 | \n",
+ " USD | \n",
+ " 52.341453 | \n",
+ " 4.853175 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id name \\\n",
+ "0 2193502 Hyatt Regency Amsterdam \n",
+ "1 10014507 Chasse Residency Hotel \n",
+ "2 10502 Swissôtel Amsterdam \n",
+ "3 4827244 Holiday Inn - the niu, Fender Amsterdam \n",
+ "4 6331862 Holiday Inn Express Amsterdam - North Riversid... \n",
+ "5 11524 Mövenpick Hotel Amsterdam City Centre \n",
+ "6 14238858 Hotel V Oosterpark \n",
+ "7 535637 Hans Brinker Hostel Amsterdam \n",
+ "8 9371917 Citadines Canal Amsterdam \n",
+ "9 10422 ibis Amsterdam Centre \n",
+ "10 10643 Renaissance Amsterdam Hotel \n",
+ "11 298608 Hotel Van Gogh \n",
+ "12 1392565 Mercure Amsterdam Sloterdijk Station \n",
+ "13 1926560 Ruby Emma Hotel Amsterdam \n",
+ "14 545708 Hampton By Hilton Amsterdam Arena Boulevard \n",
+ "15 10442 Park Plaza Victoria Amsterdam \n",
+ "16 7060204 Inntel Hotels Amsterdam Landmark \n",
+ "17 10130 Apollo Hotel Amsterdam, a Tribute Portfolio Hotel \n",
+ "18 288883 DoubleTree by Hilton Amsterdam Centraal Station \n",
+ "19 1042748 Holiday Inn Express Amsterdam Arena Towers by IHG \n",
+ "20 11616 ITC Hotel \n",
+ "21 3041919 Holiday Inn Express Amsterdam - City Hall by IHG \n",
+ "22 2007116 Sir Adam Hotel, part of Sircle Collection \n",
+ "23 10170543 Bob W Amsterdam Noord \n",
+ "24 2742213 Monet Garden Hotel Amsterdam \n",
+ "25 10002879 Bob W Oosterpark \n",
+ "26 341228 Holiday Inn Express Amsterdam - Sloterdijk Sta... \n",
+ "27 2593669 Via Amsterdam \n",
+ "28 3693027 Postillion Hotel Amsterdam \n",
+ "29 235613 Hotel Hortus \n",
+ "30 2293774 Park Inn by Radisson Amsterdam City West \n",
+ "31 1092100 XO Hotels Couture \n",
+ "32 5737589 Clayton Hotel Amsterdam American \n",
+ "33 866477 DoubleTree by Hilton Amsterdam - NDSM Wharf \n",
+ "34 4609378 Olympic Hotel \n",
+ "\n",
+ " ranking_position stars review_score review_count price currency \\\n",
+ "0 0 5 8.4 2869 580.97 USD \n",
+ "1 1 4 8.9 3874 303.13 USD \n",
+ "2 2 4 8.1 3679 432.32 USD \n",
+ "3 3 4 8.4 4817 244.40 USD \n",
+ "4 4 3 8.2 12096 233.49 USD \n",
+ "5 5 4 8.5 6343 383.23 USD \n",
+ "6 6 4 8.9 134 439.00 USD \n",
+ "7 7 0 8.0 12687 359.75 USD \n",
+ "8 8 4 8.8 1735 406.07 USD \n",
+ "9 9 3 7.7 9837 374.75 USD \n",
+ "10 10 0 8.0 660 495.09 USD \n",
+ "11 11 3 8.2 4758 363.57 USD \n",
+ "12 12 4 8.5 5026 250.07 USD \n",
+ "13 13 4 8.7 8811 243.83 USD \n",
+ "14 14 3 8.1 13132 235.57 USD \n",
+ "15 15 4 8.6 8717 489.82 USD \n",
+ "16 16 4 8.2 10359 291.52 USD \n",
+ "17 17 4 8.5 1343 283.23 USD \n",
+ "18 18 4 8.3 1052 318.95 USD \n",
+ "19 19 3 7.9 17901 210.65 USD \n",
+ "20 0 2 7.2 2144 466.54 USD \n",
+ "21 1 3 8.3 3203 517.74 USD \n",
+ "22 2 4 8.7 1361 369.27 USD \n",
+ "23 3 4 8.6 3464 402.02 USD \n",
+ "24 4 4 9.1 3901 385.54 USD \n",
+ "25 5 4 8.6 978 286.66 USD \n",
+ "26 6 3 8.1 9671 201.77 USD \n",
+ "27 7 3 8.1 15319 180.16 USD \n",
+ "28 8 4 8.5 10289 231.36 USD \n",
+ "29 9 0 8.0 3553 241.10 USD \n",
+ "30 10 4 8.4 20821 225.43 USD \n",
+ "31 11 4 8.7 9124 201.28 USD \n",
+ "32 12 4 8.5 4538 451.23 USD \n",
+ "33 13 4 8.5 3036 321.46 USD \n",
+ "34 14 4 8.6 8693 261.53 USD \n",
+ "\n",
+ " latitude longitude \n",
+ "0 52.361798 4.911744 \n",
+ "1 52.351902 4.924964 \n",
+ "2 52.373502 4.893312 \n",
+ "3 52.368967 4.946342 \n",
+ "4 52.384104 4.919524 \n",
+ "5 52.377824 4.914142 \n",
+ "6 52.361870 4.922707 \n",
+ "7 52.363679 4.888055 \n",
+ "8 52.361026 4.893588 \n",
+ "9 52.379542 4.896965 \n",
+ "10 52.377768 4.894381 \n",
+ "11 52.359056 4.880149 \n",
+ "12 52.387911 4.834296 \n",
+ "13 52.338347 4.920860 \n",
+ "14 52.313060 4.948094 \n",
+ "15 52.377348 4.897775 \n",
+ "16 52.373440 4.928435 \n",
+ "17 52.348573 4.885107 \n",
+ "18 52.376713 4.905669 \n",
+ "19 52.309578 4.941870 \n",
+ "20 52.362225 4.898582 \n",
+ "21 52.370508 4.908350 \n",
+ "22 52.383784 4.902409 \n",
+ "23 52.396594 4.906841 \n",
+ "24 52.369788 4.907262 \n",
+ "25 52.354949 4.928503 \n",
+ "26 52.388202 4.837455 \n",
+ "27 52.326207 4.953709 \n",
+ "28 52.333612 4.922194 \n",
+ "29 52.366771 4.909050 \n",
+ "30 52.390137 4.842565 \n",
+ "31 52.351104 4.841254 \n",
+ "32 52.363893 4.881296 \n",
+ "33 52.400657 4.893502 \n",
+ "34 52.341453 4.853175 "
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels[\"price\"] = df_hotels[\"price\"].round(2)\n",
+ "df_hotels.head(35)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "3f7070a3",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "RangeIndex: 220 entries, 0 to 219\n",
+ "Data columns (total 10 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 hotel_id 220 non-null int64 \n",
+ " 1 name 220 non-null object \n",
+ " 2 ranking_position 220 non-null int64 \n",
+ " 3 stars 220 non-null int64 \n",
+ " 4 review_score 220 non-null float64\n",
+ " 5 review_count 220 non-null int64 \n",
+ " 6 price 220 non-null float64\n",
+ " 7 currency 220 non-null object \n",
+ " 8 latitude 220 non-null float64\n",
+ " 9 longitude 220 non-null float64\n",
+ "dtypes: float64(4), int64(4), object(2)\n",
+ "memory usage: 17.3+ KB\n"
+ ]
+ }
+ ],
+ "source": [
+ "df_hotels.info()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "64f2fda0",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ " 220.00 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 1998314.22 | \n",
+ " 9.50 | \n",
+ " 3.23 | \n",
+ " 8.21 | \n",
+ " 3683.35 | \n",
+ " 429.03 | \n",
+ " 52.36 | \n",
+ " 4.89 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 3035410.41 | \n",
+ " 5.78 | \n",
+ " 1.31 | \n",
+ " 0.86 | \n",
+ " 3558.81 | \n",
+ " 297.88 | \n",
+ " 0.02 | \n",
+ " 0.03 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 10007.00 | \n",
+ " 0.00 | \n",
+ " 0.00 | \n",
+ " 0.00 | \n",
+ " 0.00 | \n",
+ " 177.52 | \n",
+ " 52.29 | \n",
+ " 4.77 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 10915.75 | \n",
+ " 4.75 | \n",
+ " 3.00 | \n",
+ " 7.90 | \n",
+ " 1356.50 | \n",
+ " 256.93 | \n",
+ " 52.35 | \n",
+ " 4.88 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 413599.00 | \n",
+ " 9.50 | \n",
+ " 4.00 | \n",
+ " 8.30 | \n",
+ " 2540.00 | \n",
+ " 356.96 | \n",
+ " 52.36 | \n",
+ " 4.89 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 2689821.75 | \n",
+ " 14.25 | \n",
+ " 4.00 | \n",
+ " 8.70 | \n",
+ " 4640.25 | \n",
+ " 468.73 | \n",
+ " 52.37 | \n",
+ " 4.91 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 14238858.00 | \n",
+ " 19.00 | \n",
+ " 5.00 | \n",
+ " 10.00 | \n",
+ " 20821.00 | \n",
+ " 2558.18 | \n",
+ " 52.40 | \n",
+ " 5.01 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id ranking_position stars review_score review_count \\\n",
+ "count 220.00 220.00 220.00 220.00 220.00 \n",
+ "mean 1998314.22 9.50 3.23 8.21 3683.35 \n",
+ "std 3035410.41 5.78 1.31 0.86 3558.81 \n",
+ "min 10007.00 0.00 0.00 0.00 0.00 \n",
+ "25% 10915.75 4.75 3.00 7.90 1356.50 \n",
+ "50% 413599.00 9.50 4.00 8.30 2540.00 \n",
+ "75% 2689821.75 14.25 4.00 8.70 4640.25 \n",
+ "max 14238858.00 19.00 5.00 10.00 20821.00 \n",
+ "\n",
+ " price latitude longitude \n",
+ "count 220.00 220.00 220.00 \n",
+ "mean 429.03 52.36 4.89 \n",
+ "std 297.88 0.02 0.03 \n",
+ "min 177.52 52.29 4.77 \n",
+ "25% 256.93 52.35 4.88 \n",
+ "50% 356.96 52.36 4.89 \n",
+ "75% 468.73 52.37 4.91 \n",
+ "max 2558.18 52.40 5.01 "
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.describe().round(2)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "e2470c2b",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# there are some hotels without stars and some without reviews - important to check the relevance for the analysis\n",
+ "# the maximum price is very high - need to check for outliars\n",
+ "# review score 10 is the maimum possible - need to check for relevance\n",
+ "\n",
+ "# SABINA COMMENT: Relevance here is quite vague, what do you mean?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "666cab4b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " name | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " currency | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 56 | \n",
+ " 276447 | \n",
+ " Canal House | \n",
+ " 16 | \n",
+ " 4 | \n",
+ " 8.7 | \n",
+ " 905 | \n",
+ " 602.76 | \n",
+ " USD | \n",
+ " 52.376244 | \n",
+ " 4.886327 | \n",
+ "
\n",
+ " \n",
+ " | 59 | \n",
+ " 10276 | \n",
+ " Banks Mansion - All Inclusive Boutique Hotel | \n",
+ " 19 | \n",
+ " 4 | \n",
+ " 8.8 | \n",
+ " 935 | \n",
+ " 602.76 | \n",
+ " USD | \n",
+ " 52.365383 | \n",
+ " 4.893093 | \n",
+ "
\n",
+ " \n",
+ " | 61 | \n",
+ " 1854117 | \n",
+ " Camp-Inn Hotel | \n",
+ " 1 | \n",
+ " 2 | \n",
+ " 6.3 | \n",
+ " 436 | \n",
+ " 1195.50 | \n",
+ " USD | \n",
+ " 52.382626 | \n",
+ " 4.857618 | \n",
+ "
\n",
+ " \n",
+ " | 64 | \n",
+ " 6662479 | \n",
+ " Triple G Hotels | \n",
+ " 4 | \n",
+ " 3 | \n",
+ " 6.7 | \n",
+ " 420 | \n",
+ " 1820.46 | \n",
+ " USD | \n",
+ " 52.382749 | \n",
+ " 4.857840 | \n",
+ "
\n",
+ " \n",
+ " | 79 | \n",
+ " 1358382 | \n",
+ " W Amsterdam | \n",
+ " 19 | \n",
+ " 5 | \n",
+ " 7.6 | \n",
+ " 891 | \n",
+ " 748.06 | \n",
+ " USD | \n",
+ " 52.372787 | \n",
+ " 4.890006 | \n",
+ "
\n",
+ " \n",
+ " | 84 | \n",
+ " 11463 | \n",
+ " Mozart Hotel | \n",
+ " 4 | \n",
+ " 2 | \n",
+ " 7.7 | \n",
+ " 5080 | \n",
+ " 913.66 | \n",
+ " USD | \n",
+ " 52.363570 | \n",
+ " 4.886230 | \n",
+ "
\n",
+ " \n",
+ " | 86 | \n",
+ " 11761441 | \n",
+ " The Diamond Amsterdam | \n",
+ " 6 | \n",
+ " 5 | \n",
+ " 8.4 | \n",
+ " 563 | \n",
+ " 610.40 | \n",
+ " USD | \n",
+ " 52.363793 | \n",
+ " 4.883316 | \n",
+ "
\n",
+ " \n",
+ " | 104 | \n",
+ " 23883 | \n",
+ " Hotel Allure | \n",
+ " 4 | \n",
+ " 3 | \n",
+ " 7.6 | \n",
+ " 2375 | \n",
+ " 720.87 | \n",
+ " USD | \n",
+ " 52.361829 | \n",
+ " 4.910569 | \n",
+ "
\n",
+ " \n",
+ " | 105 | \n",
+ " 6105413 | \n",
+ " Met Hotel Amsterdam | \n",
+ " 5 | \n",
+ " 4 | \n",
+ " 8.9 | \n",
+ " 1697 | \n",
+ " 1123.80 | \n",
+ " USD | \n",
+ " 52.362654 | \n",
+ " 4.835317 | \n",
+ "
\n",
+ " \n",
+ " | 135 | \n",
+ " 14046 | \n",
+ " The IF Boutique hotel | \n",
+ " 15 | \n",
+ " 3 | \n",
+ " 8.6 | \n",
+ " 1275 | \n",
+ " 683.41 | \n",
+ " USD | \n",
+ " 52.359005 | \n",
+ " 4.902716 | \n",
+ "
\n",
+ " \n",
+ " | 139 | \n",
+ " 4544808 | \n",
+ " Studio Koggeschip | \n",
+ " 19 | \n",
+ " 0 | \n",
+ " 9.4 | \n",
+ " 79 | \n",
+ " 929.30 | \n",
+ " USD | \n",
+ " 52.377325 | \n",
+ " 4.893056 | \n",
+ "
\n",
+ " \n",
+ " | 147 | \n",
+ " 10527 | \n",
+ " Pulitzer Amsterdam | \n",
+ " 7 | \n",
+ " 5 | \n",
+ " 8.9 | \n",
+ " 1019 | \n",
+ " 893.35 | \n",
+ " USD | \n",
+ " 52.372824 | \n",
+ " 4.883282 | \n",
+ "
\n",
+ " \n",
+ " | 151 | \n",
+ " 10112 | \n",
+ " OZO Hotels Cordial Amsterdam | \n",
+ " 11 | \n",
+ " 3 | \n",
+ " 6.9 | \n",
+ " 3230 | \n",
+ " 700.47 | \n",
+ " USD | \n",
+ " 52.370703 | \n",
+ " 4.892417 | \n",
+ "
\n",
+ " \n",
+ " | 155 | \n",
+ " 438120 | \n",
+ " Andaz Amsterdam, Prinsengracht, By Hyatt | \n",
+ " 15 | \n",
+ " 5 | \n",
+ " 8.8 | \n",
+ " 751 | \n",
+ " 795.76 | \n",
+ " USD | \n",
+ " 52.367857 | \n",
+ " 4.882831 | \n",
+ "
\n",
+ " \n",
+ " | 158 | \n",
+ " 11574 | \n",
+ " Belfort Hotel | \n",
+ " 18 | \n",
+ " 3 | \n",
+ " 6.0 | \n",
+ " 4476 | \n",
+ " 1027.86 | \n",
+ " USD | \n",
+ " 52.357680 | \n",
+ " 4.850442 | \n",
+ "
\n",
+ " \n",
+ " | 176 | \n",
+ " 10485 | \n",
+ " Hotel Abba | \n",
+ " 16 | \n",
+ " 1 | \n",
+ " 7.5 | \n",
+ " 3173 | \n",
+ " 621.79 | \n",
+ " USD | \n",
+ " 52.362709 | \n",
+ " 4.874610 | \n",
+ "
\n",
+ " \n",
+ " | 177 | \n",
+ " 10364 | \n",
+ " Tivoli Doelen Amsterdam Hotel | \n",
+ " 17 | \n",
+ " 5 | \n",
+ " 8.8 | \n",
+ " 1501 | \n",
+ " 616.08 | \n",
+ " USD | \n",
+ " 52.368219 | \n",
+ " 4.895726 | \n",
+ "
\n",
+ " \n",
+ " | 197 | \n",
+ " 349348 | \n",
+ " Conservatorium Hotel - Operated by Mandarin Or... | \n",
+ " 17 | \n",
+ " 5 | \n",
+ " 9.1 | \n",
+ " 251 | \n",
+ " 1081.16 | \n",
+ " USD | \n",
+ " 52.358587 | \n",
+ " 4.878488 | \n",
+ "
\n",
+ " \n",
+ " | 199 | \n",
+ " 10534 | \n",
+ " InterContinental Amstel Amsterdam by IHG | \n",
+ " 19 | \n",
+ " 5 | \n",
+ " 8.6 | \n",
+ " 317 | \n",
+ " 873.05 | \n",
+ " USD | \n",
+ " 52.360042 | \n",
+ " 4.905465 | \n",
+ "
\n",
+ " \n",
+ " | 200 | \n",
+ " 10518 | \n",
+ " Sofitel Legend The Grand Amsterdam | \n",
+ " 0 | \n",
+ " 5 | \n",
+ " 9.0 | \n",
+ " 852 | \n",
+ " 842.59 | \n",
+ " USD | \n",
+ " 52.371198 | \n",
+ " 4.895400 | \n",
+ "
\n",
+ " \n",
+ " | 202 | \n",
+ " 12635420 | \n",
+ " Rosewood Amsterdam | \n",
+ " 2 | \n",
+ " 5 | \n",
+ " 8.7 | \n",
+ " 59 | \n",
+ " 1332.42 | \n",
+ " USD | \n",
+ " 52.365736 | \n",
+ " 4.883109 | \n",
+ "
\n",
+ " \n",
+ " | 203 | \n",
+ " 6391989 | \n",
+ " Leidse Square 5 star Luxury Apartment | \n",
+ " 3 | \n",
+ " 0 | \n",
+ " 9.7 | \n",
+ " 94 | \n",
+ " 981.15 | \n",
+ " USD | \n",
+ " 52.365333 | \n",
+ " 4.881912 | \n",
+ "
\n",
+ " \n",
+ " | 204 | \n",
+ " 10007 | \n",
+ " OZO Hotels Armada Amsterdam | \n",
+ " 4 | \n",
+ " 3 | \n",
+ " 6.5 | \n",
+ " 1994 | \n",
+ " 875.59 | \n",
+ " USD | \n",
+ " 52.364055 | \n",
+ " 4.898446 | \n",
+ "
\n",
+ " \n",
+ " | 206 | \n",
+ " 10282 | \n",
+ " De L’Europe Amsterdam – The Leading Hotels of ... | \n",
+ " 6 | \n",
+ " 5 | \n",
+ " 9.2 | \n",
+ " 394 | \n",
+ " 913.66 | \n",
+ " USD | \n",
+ " 52.367639 | \n",
+ " 4.894205 | \n",
+ "
\n",
+ " \n",
+ " | 208 | \n",
+ " 1014256 | \n",
+ " Waldorf Astoria Amsterdam | \n",
+ " 8 | \n",
+ " 5 | \n",
+ " 9.5 | \n",
+ " 216 | \n",
+ " 1532.06 | \n",
+ " USD | \n",
+ " 52.364638 | \n",
+ " 4.896442 | \n",
+ "
\n",
+ " \n",
+ " | 212 | \n",
+ " 8025958 | \n",
+ " Pillows Grand Boutique Hotel Maurits at the Pa... | \n",
+ " 12 | \n",
+ " 5 | \n",
+ " 9.4 | \n",
+ " 646 | \n",
+ " 747.42 | \n",
+ " USD | \n",
+ " 52.362194 | \n",
+ " 4.919684 | \n",
+ "
\n",
+ " \n",
+ " | 213 | \n",
+ " 2109446 | \n",
+ " Luxurious 110m² 3br Houseboat in Amsterdam Cen... | \n",
+ " 13 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ " 0 | \n",
+ " 2558.18 | \n",
+ " USD | \n",
+ " 52.371204 | \n",
+ " 4.903569 | \n",
+ "
\n",
+ " \n",
+ " | 214 | \n",
+ " 2785940 | \n",
+ " Hotel TwentySeven - Small Luxury Hotels of the... | \n",
+ " 14 | \n",
+ " 5 | \n",
+ " 9.6 | \n",
+ " 259 | \n",
+ " 1713.11 | \n",
+ " USD | \n",
+ " 52.372491 | \n",
+ " 4.893325 | \n",
+ "
\n",
+ " \n",
+ " | 218 | \n",
+ " 1139273 | \n",
+ " Crane Hotel Faralda | \n",
+ " 18 | \n",
+ " 5 | \n",
+ " 9.7 | \n",
+ " 15 | \n",
+ " 1407.03 | \n",
+ " USD | \n",
+ " 52.399280 | \n",
+ " 4.894732 | \n",
+ "
\n",
+ " \n",
+ " | 219 | \n",
+ " 393283 | \n",
+ " Breitner House | \n",
+ " 19 | \n",
+ " 0 | \n",
+ " 10.0 | \n",
+ " 35 | \n",
+ " 881.93 | \n",
+ " USD | \n",
+ " 52.359728 | \n",
+ " 4.924482 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id name \\\n",
+ "56 276447 Canal House \n",
+ "59 10276 Banks Mansion - All Inclusive Boutique Hotel \n",
+ "61 1854117 Camp-Inn Hotel \n",
+ "64 6662479 Triple G Hotels \n",
+ "79 1358382 W Amsterdam \n",
+ "84 11463 Mozart Hotel \n",
+ "86 11761441 The Diamond Amsterdam \n",
+ "104 23883 Hotel Allure \n",
+ "105 6105413 Met Hotel Amsterdam \n",
+ "135 14046 The IF Boutique hotel \n",
+ "139 4544808 Studio Koggeschip \n",
+ "147 10527 Pulitzer Amsterdam \n",
+ "151 10112 OZO Hotels Cordial Amsterdam \n",
+ "155 438120 Andaz Amsterdam, Prinsengracht, By Hyatt \n",
+ "158 11574 Belfort Hotel \n",
+ "176 10485 Hotel Abba \n",
+ "177 10364 Tivoli Doelen Amsterdam Hotel \n",
+ "197 349348 Conservatorium Hotel - Operated by Mandarin Or... \n",
+ "199 10534 InterContinental Amstel Amsterdam by IHG \n",
+ "200 10518 Sofitel Legend The Grand Amsterdam \n",
+ "202 12635420 Rosewood Amsterdam \n",
+ "203 6391989 Leidse Square 5 star Luxury Apartment \n",
+ "204 10007 OZO Hotels Armada Amsterdam \n",
+ "206 10282 De L’Europe Amsterdam – The Leading Hotels of ... \n",
+ "208 1014256 Waldorf Astoria Amsterdam \n",
+ "212 8025958 Pillows Grand Boutique Hotel Maurits at the Pa... \n",
+ "213 2109446 Luxurious 110m² 3br Houseboat in Amsterdam Cen... \n",
+ "214 2785940 Hotel TwentySeven - Small Luxury Hotels of the... \n",
+ "218 1139273 Crane Hotel Faralda \n",
+ "219 393283 Breitner House \n",
+ "\n",
+ " ranking_position stars review_score review_count price currency \\\n",
+ "56 16 4 8.7 905 602.76 USD \n",
+ "59 19 4 8.8 935 602.76 USD \n",
+ "61 1 2 6.3 436 1195.50 USD \n",
+ "64 4 3 6.7 420 1820.46 USD \n",
+ "79 19 5 7.6 891 748.06 USD \n",
+ "84 4 2 7.7 5080 913.66 USD \n",
+ "86 6 5 8.4 563 610.40 USD \n",
+ "104 4 3 7.6 2375 720.87 USD \n",
+ "105 5 4 8.9 1697 1123.80 USD \n",
+ "135 15 3 8.6 1275 683.41 USD \n",
+ "139 19 0 9.4 79 929.30 USD \n",
+ "147 7 5 8.9 1019 893.35 USD \n",
+ "151 11 3 6.9 3230 700.47 USD \n",
+ "155 15 5 8.8 751 795.76 USD \n",
+ "158 18 3 6.0 4476 1027.86 USD \n",
+ "176 16 1 7.5 3173 621.79 USD \n",
+ "177 17 5 8.8 1501 616.08 USD \n",
+ "197 17 5 9.1 251 1081.16 USD \n",
+ "199 19 5 8.6 317 873.05 USD \n",
+ "200 0 5 9.0 852 842.59 USD \n",
+ "202 2 5 8.7 59 1332.42 USD \n",
+ "203 3 0 9.7 94 981.15 USD \n",
+ "204 4 3 6.5 1994 875.59 USD \n",
+ "206 6 5 9.2 394 913.66 USD \n",
+ "208 8 5 9.5 216 1532.06 USD \n",
+ "212 12 5 9.4 646 747.42 USD \n",
+ "213 13 0 0.0 0 2558.18 USD \n",
+ "214 14 5 9.6 259 1713.11 USD \n",
+ "218 18 5 9.7 15 1407.03 USD \n",
+ "219 19 0 10.0 35 881.93 USD \n",
+ "\n",
+ " latitude longitude \n",
+ "56 52.376244 4.886327 \n",
+ "59 52.365383 4.893093 \n",
+ "61 52.382626 4.857618 \n",
+ "64 52.382749 4.857840 \n",
+ "79 52.372787 4.890006 \n",
+ "84 52.363570 4.886230 \n",
+ "86 52.363793 4.883316 \n",
+ "104 52.361829 4.910569 \n",
+ "105 52.362654 4.835317 \n",
+ "135 52.359005 4.902716 \n",
+ "139 52.377325 4.893056 \n",
+ "147 52.372824 4.883282 \n",
+ "151 52.370703 4.892417 \n",
+ "155 52.367857 4.882831 \n",
+ "158 52.357680 4.850442 \n",
+ "176 52.362709 4.874610 \n",
+ "177 52.368219 4.895726 \n",
+ "197 52.358587 4.878488 \n",
+ "199 52.360042 4.905465 \n",
+ "200 52.371198 4.895400 \n",
+ "202 52.365736 4.883109 \n",
+ "203 52.365333 4.881912 \n",
+ "204 52.364055 4.898446 \n",
+ "206 52.367639 4.894205 \n",
+ "208 52.364638 4.896442 \n",
+ "212 52.362194 4.919684 \n",
+ "213 52.371204 4.903569 \n",
+ "214 52.372491 4.893325 \n",
+ "218 52.399280 4.894732 \n",
+ "219 52.359728 4.924482 "
+ ]
+ },
+ "execution_count": 9,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels[df_hotels[\"price\"] > 600]\n",
+ "# SABINA COMMENT: Why 600? What does this number represent?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "a0b0cbd4",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " name | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " currency | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 7 | \n",
+ " 535637 | \n",
+ " Hans Brinker Hostel Amsterdam | \n",
+ " 7 | \n",
+ " 0 | \n",
+ " 8.0 | \n",
+ " 12687 | \n",
+ " 359.75 | \n",
+ " USD | \n",
+ " 52.363679 | \n",
+ " 4.888055 | \n",
+ "
\n",
+ " \n",
+ " | 10 | \n",
+ " 10643 | \n",
+ " Renaissance Amsterdam Hotel | \n",
+ " 10 | \n",
+ " 0 | \n",
+ " 8.0 | \n",
+ " 660 | \n",
+ " 495.09 | \n",
+ " USD | \n",
+ " 52.377768 | \n",
+ " 4.894381 | \n",
+ "
\n",
+ " \n",
+ " | 29 | \n",
+ " 235613 | \n",
+ " Hotel Hortus | \n",
+ " 9 | \n",
+ " 0 | \n",
+ " 8.0 | \n",
+ " 3553 | \n",
+ " 241.10 | \n",
+ " USD | \n",
+ " 52.366771 | \n",
+ " 4.909050 | \n",
+ "
\n",
+ " \n",
+ " | 80 | \n",
+ " 10248 | \n",
+ " De Bedstee Boutique Capsules | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 8.2 | \n",
+ " 2278 | \n",
+ " 235.08 | \n",
+ " USD | \n",
+ " 52.355791 | \n",
+ " 4.877757 | \n",
+ "
\n",
+ " \n",
+ " | 106 | \n",
+ " 12209886 | \n",
+ " Limehome Amsterdam Gatwickstraat | \n",
+ " 6 | \n",
+ " 0 | \n",
+ " 7.7 | \n",
+ " 866 | \n",
+ " 370.35 | \n",
+ " USD | \n",
+ " 52.390528 | \n",
+ " 4.841889 | \n",
+ "
\n",
+ " \n",
+ " | 117 | \n",
+ " 1580580 | \n",
+ " Pension Homeland | \n",
+ " 17 | \n",
+ " 0 | \n",
+ " 8.6 | \n",
+ " 3694 | \n",
+ " 267.24 | \n",
+ " USD | \n",
+ " 52.373048 | \n",
+ " 4.916859 | \n",
+ "
\n",
+ " \n",
+ " | 139 | \n",
+ " 4544808 | \n",
+ " Studio Koggeschip | \n",
+ " 19 | \n",
+ " 0 | \n",
+ " 9.4 | \n",
+ " 79 | \n",
+ " 929.30 | \n",
+ " USD | \n",
+ " 52.377325 | \n",
+ " 4.893056 | \n",
+ "
\n",
+ " \n",
+ " | 140 | \n",
+ " 9367966 | \n",
+ " Hotel Jansen Amsterdam Bajeskwartier | \n",
+ " 0 | \n",
+ " 0 | \n",
+ " 8.4 | \n",
+ " 4172 | \n",
+ " 211.28 | \n",
+ " USD | \n",
+ " 52.339954 | \n",
+ " 4.924154 | \n",
+ "
\n",
+ " \n",
+ " | 145 | \n",
+ " 910327 | \n",
+ " Golden Mansion Aparthotel | \n",
+ " 5 | \n",
+ " 0 | \n",
+ " 8.2 | \n",
+ " 1709 | \n",
+ " 329.93 | \n",
+ " USD | \n",
+ " 52.359016 | \n",
+ " 4.897946 | \n",
+ "
\n",
+ " \n",
+ " | 150 | \n",
+ " 1419228 | \n",
+ " Amsterdam-Houseboat-Amstel | \n",
+ " 10 | \n",
+ " 0 | \n",
+ " 8.9 | \n",
+ " 226 | \n",
+ " 517.57 | \n",
+ " USD | \n",
+ " 52.358103 | \n",
+ " 4.897197 | \n",
+ "
\n",
+ " \n",
+ " | 154 | \n",
+ " 1015063 | \n",
+ " hotel calisto | \n",
+ " 14 | \n",
+ " 0 | \n",
+ " 8.6 | \n",
+ " 804 | \n",
+ " 325.49 | \n",
+ " USD | \n",
+ " 52.382360 | \n",
+ " 4.887462 | \n",
+ "
\n",
+ " \n",
+ " | 157 | \n",
+ " 1067088 | \n",
+ " Volkshotel | \n",
+ " 17 | \n",
+ " 0 | \n",
+ " 8.7 | \n",
+ " 5278 | \n",
+ " 201.00 | \n",
+ " USD | \n",
+ " 52.353711 | \n",
+ " 4.911916 | \n",
+ "
\n",
+ " \n",
+ " | 162 | \n",
+ " 10940 | \n",
+ " Heart of Amsterdam Hostel | \n",
+ " 2 | \n",
+ " 0 | \n",
+ " 7.9 | \n",
+ " 3284 | \n",
+ " 391.79 | \n",
+ " USD | \n",
+ " 52.372332 | \n",
+ " 4.897582 | \n",
+ "
\n",
+ " \n",
+ " | 170 | \n",
+ " 6458577 | \n",
+ " Outside Inn | \n",
+ " 10 | \n",
+ " 0 | \n",
+ " 9.0 | \n",
+ " 1501 | \n",
+ " 235.61 | \n",
+ " USD | \n",
+ " 52.326535 | \n",
+ " 4.931027 | \n",
+ "
\n",
+ " \n",
+ " | 182 | \n",
+ " 11497597 | \n",
+ " Limehome Amsterdam Leidsekruisstraat | \n",
+ " 2 | \n",
+ " 0 | \n",
+ " 7.8 | \n",
+ " 318 | \n",
+ " 418.65 | \n",
+ " USD | \n",
+ " 52.363648 | \n",
+ " 4.885375 | \n",
+ "
\n",
+ " \n",
+ " | 186 | \n",
+ " 8879628 | \n",
+ " City Rooms Amsterdam Hemonystraat - Digital ac... | \n",
+ " 6 | \n",
+ " 0 | \n",
+ " 7.4 | \n",
+ " 249 | \n",
+ " 303.64 | \n",
+ " USD | \n",
+ " 52.358130 | \n",
+ " 4.902205 | \n",
+ "
\n",
+ " \n",
+ " | 192 | \n",
+ " 4226671 | \n",
+ " Skotel Amsterdam, Hotelschool The Hague | \n",
+ " 12 | \n",
+ " 0 | \n",
+ " 8.9 | \n",
+ " 1698 | \n",
+ " 241.10 | \n",
+ " USD | \n",
+ " 52.369289 | \n",
+ " 4.843877 | \n",
+ "
\n",
+ " \n",
+ " | 203 | \n",
+ " 6391989 | \n",
+ " Leidse Square 5 star Luxury Apartment | \n",
+ " 3 | \n",
+ " 0 | \n",
+ " 9.7 | \n",
+ " 94 | \n",
+ " 981.15 | \n",
+ " USD | \n",
+ " 52.365333 | \n",
+ " 4.881912 | \n",
+ "
\n",
+ " \n",
+ " | 213 | \n",
+ " 2109446 | \n",
+ " Luxurious 110m² 3br Houseboat in Amsterdam Cen... | \n",
+ " 13 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ " 0 | \n",
+ " 2558.18 | \n",
+ " USD | \n",
+ " 52.371204 | \n",
+ " 4.903569 | \n",
+ "
\n",
+ " \n",
+ " | 219 | \n",
+ " 393283 | \n",
+ " Breitner House | \n",
+ " 19 | \n",
+ " 0 | \n",
+ " 10.0 | \n",
+ " 35 | \n",
+ " 881.93 | \n",
+ " USD | \n",
+ " 52.359728 | \n",
+ " 4.924482 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id name \\\n",
+ "7 535637 Hans Brinker Hostel Amsterdam \n",
+ "10 10643 Renaissance Amsterdam Hotel \n",
+ "29 235613 Hotel Hortus \n",
+ "80 10248 De Bedstee Boutique Capsules \n",
+ "106 12209886 Limehome Amsterdam Gatwickstraat \n",
+ "117 1580580 Pension Homeland \n",
+ "139 4544808 Studio Koggeschip \n",
+ "140 9367966 Hotel Jansen Amsterdam Bajeskwartier \n",
+ "145 910327 Golden Mansion Aparthotel \n",
+ "150 1419228 Amsterdam-Houseboat-Amstel \n",
+ "154 1015063 hotel calisto \n",
+ "157 1067088 Volkshotel \n",
+ "162 10940 Heart of Amsterdam Hostel \n",
+ "170 6458577 Outside Inn \n",
+ "182 11497597 Limehome Amsterdam Leidsekruisstraat \n",
+ "186 8879628 City Rooms Amsterdam Hemonystraat - Digital ac... \n",
+ "192 4226671 Skotel Amsterdam, Hotelschool The Hague \n",
+ "203 6391989 Leidse Square 5 star Luxury Apartment \n",
+ "213 2109446 Luxurious 110m² 3br Houseboat in Amsterdam Cen... \n",
+ "219 393283 Breitner House \n",
+ "\n",
+ " ranking_position stars review_score review_count price currency \\\n",
+ "7 7 0 8.0 12687 359.75 USD \n",
+ "10 10 0 8.0 660 495.09 USD \n",
+ "29 9 0 8.0 3553 241.10 USD \n",
+ "80 0 0 8.2 2278 235.08 USD \n",
+ "106 6 0 7.7 866 370.35 USD \n",
+ "117 17 0 8.6 3694 267.24 USD \n",
+ "139 19 0 9.4 79 929.30 USD \n",
+ "140 0 0 8.4 4172 211.28 USD \n",
+ "145 5 0 8.2 1709 329.93 USD \n",
+ "150 10 0 8.9 226 517.57 USD \n",
+ "154 14 0 8.6 804 325.49 USD \n",
+ "157 17 0 8.7 5278 201.00 USD \n",
+ "162 2 0 7.9 3284 391.79 USD \n",
+ "170 10 0 9.0 1501 235.61 USD \n",
+ "182 2 0 7.8 318 418.65 USD \n",
+ "186 6 0 7.4 249 303.64 USD \n",
+ "192 12 0 8.9 1698 241.10 USD \n",
+ "203 3 0 9.7 94 981.15 USD \n",
+ "213 13 0 0.0 0 2558.18 USD \n",
+ "219 19 0 10.0 35 881.93 USD \n",
+ "\n",
+ " latitude longitude \n",
+ "7 52.363679 4.888055 \n",
+ "10 52.377768 4.894381 \n",
+ "29 52.366771 4.909050 \n",
+ "80 52.355791 4.877757 \n",
+ "106 52.390528 4.841889 \n",
+ "117 52.373048 4.916859 \n",
+ "139 52.377325 4.893056 \n",
+ "140 52.339954 4.924154 \n",
+ "145 52.359016 4.897946 \n",
+ "150 52.358103 4.897197 \n",
+ "154 52.382360 4.887462 \n",
+ "157 52.353711 4.911916 \n",
+ "162 52.372332 4.897582 \n",
+ "170 52.326535 4.931027 \n",
+ "182 52.363648 4.885375 \n",
+ "186 52.358130 4.902205 \n",
+ "192 52.369289 4.843877 \n",
+ "203 52.365333 4.881912 \n",
+ "213 52.371204 4.903569 \n",
+ "219 52.359728 4.924482 "
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels[df_hotels[\"stars\"] == 0]\n",
+ "# there are 20 hotels without star indication, but they have many reviews so I keep them \n",
+ "# SABINA COMMENT: Need to mention that many are Hostels, Capsules, Aparthotels, except for Renaissance Amsterdam Hotel which I'd probably look into"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 11,
+ "id": "480df5d7",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "20"
+ ]
+ },
+ "execution_count": 11,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "len(df_hotels[df_hotels[\"stars\"] == 0])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "id": "585a0279",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "1"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "len(df_hotels[df_hotels[\"review_score\"] == 0])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "id": "63e62a4a",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " name | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " currency | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 213 | \n",
+ " 2109446 | \n",
+ " Luxurious 110m² 3br Houseboat in Amsterdam Cen... | \n",
+ " 13 | \n",
+ " 0 | \n",
+ " 0.0 | \n",
+ " 0 | \n",
+ " 2558.18 | \n",
+ " USD | \n",
+ " 52.371204 | \n",
+ " 4.903569 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id name \\\n",
+ "213 2109446 Luxurious 110m² 3br Houseboat in Amsterdam Cen... \n",
+ "\n",
+ " ranking_position stars review_score review_count price currency \\\n",
+ "213 13 0 0.0 0 2558.18 USD \n",
+ "\n",
+ " latitude longitude \n",
+ "213 52.371204 4.903569 "
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels[df_hotels[\"review_score\"] == 0]\n",
+ "# there is one outliar listing with very high price and zero reviews and zero stars"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "8137bca7",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "1"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "len(df_hotels[df_hotels[\"review_count\"] == 0])\n",
+ "# there are no hotels without reviews"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "id": "a17384b1",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df_hotels = df_hotels.drop(df_hotels[df_hotels[\"review_score\"] == 0].index)\n",
+ "\n",
+ "# dropping this outliar from the dataframe"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "id": "85b0edcd",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "len(df_hotels[df_hotels[\"review_count\"] == 0])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "id": "7dfbfb2e",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " name | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " currency | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | 219 | \n",
+ " 393283 | \n",
+ " Breitner House | \n",
+ " 19 | \n",
+ " 0 | \n",
+ " 10.0 | \n",
+ " 35 | \n",
+ " 881.93 | \n",
+ " USD | \n",
+ " 52.359728 | \n",
+ " 4.924482 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id name ranking_position stars review_score \\\n",
+ "219 393283 Breitner House 19 0 10.0 \n",
+ "\n",
+ " review_count price currency latitude longitude \n",
+ "219 35 881.93 USD 52.359728 4.924482 "
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels[df_hotels[\"review_score\"] == 10.0]\n",
+ "# there is only one hotel with the highest possible score, it's an outliar"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "649a6f70",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "df_hotels = df_hotels.drop(df_hotels[df_hotels[\"review_score\"] == 10.0].index)\n",
+ "# dropping this outliar\n",
+ "# SABINA COMMENT: Why are you removing this? Seems like a good place, just few reviews => high score"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "id": "20892789",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "hotel_id 0\n",
+ "name 0\n",
+ "ranking_position 0\n",
+ "stars 0\n",
+ "review_score 0\n",
+ "review_count 0\n",
+ "price 0\n",
+ "currency 0\n",
+ "latitude 0\n",
+ "longitude 0\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.isna().sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "id": "fa3cdd93",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "np.int64(0)"
+ ]
+ },
+ "execution_count": 20,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.duplicated().sum()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "d8017223",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "np.int64(0)"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels[\"hotel_id\"].duplicated().sum()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "265b2996",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# further no duplicates or null values, so the data is clean and can be used for charts and analysis"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "e7cce50c",
+ "metadata": {},
+ "source": [
+ "# Analysis\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "id": "2191523b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " hotel_id | \n",
+ " ranking_position | \n",
+ " stars | \n",
+ " review_score | \n",
+ " review_count | \n",
+ " price | \n",
+ " latitude | \n",
+ " longitude | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ " 218.00 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 2005166.97 | \n",
+ " 9.44 | \n",
+ " 3.26 | \n",
+ " 8.24 | \n",
+ " 3716.98 | \n",
+ " 417.19 | \n",
+ " 52.36 | \n",
+ " 4.89 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 3047402.14 | \n",
+ " 5.76 | \n",
+ " 1.27 | \n",
+ " 0.65 | \n",
+ " 3557.65 | \n",
+ " 259.95 | \n",
+ " 0.02 | \n",
+ " 0.03 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 10007.00 | \n",
+ " 0.00 | \n",
+ " 0.00 | \n",
+ " 6.00 | \n",
+ " 15.00 | \n",
+ " 177.52 | \n",
+ " 52.29 | \n",
+ " 4.77 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 10911.25 | \n",
+ " 4.25 | \n",
+ " 3.00 | \n",
+ " 7.90 | \n",
+ " 1371.50 | \n",
+ " 255.58 | \n",
+ " 52.35 | \n",
+ " 4.88 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 413599.00 | \n",
+ " 9.00 | \n",
+ " 4.00 | \n",
+ " 8.30 | \n",
+ " 2625.00 | \n",
+ " 354.21 | \n",
+ " 52.36 | \n",
+ " 4.89 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 2697225.25 | \n",
+ " 14.00 | \n",
+ " 4.00 | \n",
+ " 8.70 | \n",
+ " 4718.75 | \n",
+ " 465.58 | \n",
+ " 52.37 | \n",
+ " 4.91 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 14238858.00 | \n",
+ " 19.00 | \n",
+ " 5.00 | \n",
+ " 9.70 | \n",
+ " 20821.00 | \n",
+ " 1820.46 | \n",
+ " 52.40 | \n",
+ " 5.01 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " hotel_id ranking_position stars review_score review_count \\\n",
+ "count 218.00 218.00 218.00 218.00 218.00 \n",
+ "mean 2005166.97 9.44 3.26 8.24 3716.98 \n",
+ "std 3047402.14 5.76 1.27 0.65 3557.65 \n",
+ "min 10007.00 0.00 0.00 6.00 15.00 \n",
+ "25% 10911.25 4.25 3.00 7.90 1371.50 \n",
+ "50% 413599.00 9.00 4.00 8.30 2625.00 \n",
+ "75% 2697225.25 14.00 4.00 8.70 4718.75 \n",
+ "max 14238858.00 19.00 5.00 9.70 20821.00 \n",
+ "\n",
+ " price latitude longitude \n",
+ "count 218.00 218.00 218.00 \n",
+ "mean 417.19 52.36 4.89 \n",
+ "std 259.95 0.02 0.03 \n",
+ "min 177.52 52.29 4.77 \n",
+ "25% 255.58 52.35 4.88 \n",
+ "50% 354.21 52.36 4.89 \n",
+ "75% 465.58 52.37 4.91 \n",
+ "max 1820.46 52.40 5.01 "
+ ]
+ },
+ "execution_count": 23,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.describe().round(2)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "03f520ec",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# the majority of the hotels have 4 stars with high review score and around 3 to 4 thousands reviews, their price on average around 350 USD per night\n",
+ "# SABINA COMMENT: Nice :) "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 25,
+ "id": "51c0bb0b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | stars | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 2 | \n",
+ " 3 | \n",
+ " 4 | \n",
+ " 5 | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 18.00 | \n",
+ " 4.00 | \n",
+ " 14.00 | \n",
+ " 70.00 | \n",
+ " 91.00 | \n",
+ " 21.00 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 8.41 | \n",
+ " 7.62 | \n",
+ " 7.36 | \n",
+ " 7.88 | \n",
+ " 8.52 | \n",
+ " 8.77 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 0.61 | \n",
+ " 0.34 | \n",
+ " 0.56 | \n",
+ " 0.64 | \n",
+ " 0.37 | \n",
+ " 0.56 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 7.40 | \n",
+ " 7.30 | \n",
+ " 6.30 | \n",
+ " 6.00 | \n",
+ " 7.40 | \n",
+ " 7.60 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 8.00 | \n",
+ " 7.45 | \n",
+ " 7.05 | \n",
+ " 7.70 | \n",
+ " 8.30 | \n",
+ " 8.50 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 8.30 | \n",
+ " 7.55 | \n",
+ " 7.45 | \n",
+ " 7.90 | \n",
+ " 8.60 | \n",
+ " 8.80 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 8.85 | \n",
+ " 7.72 | \n",
+ " 7.68 | \n",
+ " 8.30 | \n",
+ " 8.70 | \n",
+ " 9.10 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 9.70 | \n",
+ " 8.10 | \n",
+ " 8.30 | \n",
+ " 8.90 | \n",
+ " 9.30 | \n",
+ " 9.70 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ "stars 0 1 2 3 4 5\n",
+ "count 18.00 4.00 14.00 70.00 91.00 21.00\n",
+ "mean 8.41 7.62 7.36 7.88 8.52 8.77\n",
+ "std 0.61 0.34 0.56 0.64 0.37 0.56\n",
+ "min 7.40 7.30 6.30 6.00 7.40 7.60\n",
+ "25% 8.00 7.45 7.05 7.70 8.30 8.50\n",
+ "50% 8.30 7.55 7.45 7.90 8.60 8.80\n",
+ "75% 8.85 7.72 7.68 8.30 8.70 9.10\n",
+ "max 9.70 8.10 8.30 8.90 9.30 9.70"
+ ]
+ },
+ "execution_count": 25,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.groupby(\"stars\")[\"review_score\"].describe().round(2).T"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "3f73b012",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# the biggest group is 4-star hotels and 3-star hotels showing the upper and mid segment are the primarial sector in Amsterdam"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "3adfbede",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Review scores increase with star rating, showing that higher-category hotels deliver stronger guest experiences. \n",
+ "# Unrated (0-star) hotels show rating similar to 4-star hotels\n",
+ "# 1- and 2-star properties show lower and more modest guest satisfaction\n",
+ "# The 3-star category is the most inconsistent, ranging from poorly rated to nearly 4-star quality. \n",
+ "# 4- and 5-star hotels show consistently high review scores\n",
+ "# general guest satisfaction is high for all categories\n",
+ "\n",
+ "# SABINA COMMENT: I think this would've been much easier to see with boxplots\n",
+ "# x-axis = star rating, y-axis = review_score"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 27,
+ "id": "2504ac85",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | stars | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 2 | \n",
+ " 3 | \n",
+ " 4 | \n",
+ " 5 | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 18.00 | \n",
+ " 4.00 | \n",
+ " 14.00 | \n",
+ " 70.00 | \n",
+ " 91.00 | \n",
+ " 21.00 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 2397.22 | \n",
+ " 2263.75 | \n",
+ " 2255.21 | \n",
+ " 4641.69 | \n",
+ " 4167.38 | \n",
+ " 1065.43 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 3020.95 | \n",
+ " 1239.96 | \n",
+ " 1474.74 | \n",
+ " 4202.74 | \n",
+ " 3371.20 | \n",
+ " 1030.49 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 79.00 | \n",
+ " 610.00 | \n",
+ " 436.00 | \n",
+ " 49.00 | \n",
+ " 134.00 | \n",
+ " 15.00 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 403.50 | \n",
+ " 1663.00 | \n",
+ " 1196.50 | \n",
+ " 1921.25 | \n",
+ " 1764.50 | \n",
+ " 317.00 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 1599.50 | \n",
+ " 2593.50 | \n",
+ " 1892.00 | \n",
+ " 3197.00 | \n",
+ " 3077.00 | \n",
+ " 751.00 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 3485.75 | \n",
+ " 3194.25 | \n",
+ " 2800.50 | \n",
+ " 6075.75 | \n",
+ " 5628.50 | \n",
+ " 1501.00 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 12687.00 | \n",
+ " 3258.00 | \n",
+ " 5340.00 | \n",
+ " 17901.00 | \n",
+ " 20821.00 | \n",
+ " 3780.00 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ "stars 0 1 2 3 4 5\n",
+ "count 18.00 4.00 14.00 70.00 91.00 21.00\n",
+ "mean 2397.22 2263.75 2255.21 4641.69 4167.38 1065.43\n",
+ "std 3020.95 1239.96 1474.74 4202.74 3371.20 1030.49\n",
+ "min 79.00 610.00 436.00 49.00 134.00 15.00\n",
+ "25% 403.50 1663.00 1196.50 1921.25 1764.50 317.00\n",
+ "50% 1599.50 2593.50 1892.00 3197.00 3077.00 751.00\n",
+ "75% 3485.75 3194.25 2800.50 6075.75 5628.50 1501.00\n",
+ "max 12687.00 3258.00 5340.00 17901.00 20821.00 3780.00"
+ ]
+ },
+ "execution_count": 27,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.groupby(\"stars\")[\"review_count\"].describe().round(2).T"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 28,
+ "id": "691abdf2",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# 3- and 4-star hotels receive the highest number of reviews, meaning they are the most frequently booked and have the highest visibility on Booking.com\n",
+ "# 5-star hotels receive much less reviews, likely due to lower occupancy and higher prices — fewer guests, but often more premium stays\n",
+ "# 0-star hotels show surprising extremes, from very few to extremely high review counts, reflecting mixed visibility\n",
+ "# 1- and 2-star hotels have moderate but steady review volumes, indicating stable demand but not high popularity"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 29,
+ "id": "51c79705",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | stars | \n",
+ " 0 | \n",
+ " 1 | \n",
+ " 2 | \n",
+ " 3 | \n",
+ " 4 | \n",
+ " 5 | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " | count | \n",
+ " 18.00 | \n",
+ " 4.00 | \n",
+ " 14.00 | \n",
+ " 70.00 | \n",
+ " 91.00 | \n",
+ " 21.00 | \n",
+ "
\n",
+ " \n",
+ " | mean | \n",
+ " 391.95 | \n",
+ " 507.59 | \n",
+ " 442.39 | \n",
+ " 378.24 | \n",
+ " 348.09 | \n",
+ " 834.05 | \n",
+ "
\n",
+ " \n",
+ " | std | \n",
+ " 224.89 | \n",
+ " 162.51 | \n",
+ " 275.08 | \n",
+ " 240.80 | \n",
+ " 132.31 | \n",
+ " 382.22 | \n",
+ "
\n",
+ " \n",
+ " | min | \n",
+ " 201.00 | \n",
+ " 266.48 | \n",
+ " 212.43 | \n",
+ " 177.52 | \n",
+ " 181.21 | \n",
+ " 312.42 | \n",
+ "
\n",
+ " \n",
+ " | 25% | \n",
+ " 241.10 | \n",
+ " 494.90 | \n",
+ " 287.97 | \n",
+ " 234.01 | \n",
+ " 247.46 | \n",
+ " 558.47 | \n",
+ "
\n",
+ " \n",
+ " | 50% | \n",
+ " 327.71 | \n",
+ " 571.04 | \n",
+ " 364.22 | \n",
+ " 347.66 | \n",
+ " 330.69 | \n",
+ " 748.06 | \n",
+ "
\n",
+ " \n",
+ " | 75% | \n",
+ " 411.94 | \n",
+ " 583.73 | \n",
+ " 413.20 | \n",
+ " 416.48 | \n",
+ " 412.08 | \n",
+ " 913.66 | \n",
+ "
\n",
+ " \n",
+ " | max | \n",
+ " 981.15 | \n",
+ " 621.79 | \n",
+ " 1195.50 | \n",
+ " 1820.46 | \n",
+ " 1123.80 | \n",
+ " 1713.11 | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ "stars 0 1 2 3 4 5\n",
+ "count 18.00 4.00 14.00 70.00 91.00 21.00\n",
+ "mean 391.95 507.59 442.39 378.24 348.09 834.05\n",
+ "std 224.89 162.51 275.08 240.80 132.31 382.22\n",
+ "min 201.00 266.48 212.43 177.52 181.21 312.42\n",
+ "25% 241.10 494.90 287.97 234.01 247.46 558.47\n",
+ "50% 327.71 571.04 364.22 347.66 330.69 748.06\n",
+ "75% 411.94 583.73 413.20 416.48 412.08 913.66\n",
+ "max 981.15 621.79 1195.50 1820.46 1123.80 1713.11"
+ ]
+ },
+ "execution_count": 29,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df_hotels.groupby(\"stars\")[\"price\"].describe().round(2).T"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 30,
+ "id": "fbfd1add",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# 5-star hotels are clearly the most expensive, as expected\n",
+ "# 3-star hotels show the widest price range, from budget to luxury-like pricing\n",
+ "# 4-star hotels are cheaper on average than 1-star, 2-star, and 3-star hotels, which is unusual\n",
+ "# 1-star hotels are unexpectedly expensive, possibly due to very small sample size (only 4 hotels) or premium locations\n",
+ "# 0-star hotels also include some high-priced listings, indicating that star rating alone does not define price"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5a265020",
+ "metadata": {},
+ "source": [
+ "# Charts"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "dc4a4b1e",
+ "metadata": {},
+ "source": [
+ "## in Plotly"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 31,
+ "id": "a4ddaa39",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import plotly.express as px"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "id": "810b77a1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "alignmentgroup": "True",
+ "bingroup": "x",
+ "hovertemplate": "Price (USD)=%{x}
count=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "pattern": {
+ "shape": ""
+ }
+ },
+ "name": "",
+ "nbinsx": 30,
+ "offsetgroup": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "histogram",
+ "x": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "xaxis": "x",
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "barmode": "relative",
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Hotel Price Distribution (USD)"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Price (USD)"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "count"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "import plotly.express as px\n",
+ "\n",
+ "fig = px.histogram(\n",
+ " df_hotels, \n",
+ " x=\"price\",\n",
+ " nbins=30,\n",
+ " title=\"Hotel Price Distribution (USD)\",\n",
+ " labels={\"price\": \"Price (USD)\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "id": "f967f1b1",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The price distribution of Amsterdam hotels is heavily concentrated between $200 and $500, indicating a strong mid-range market. \n",
+ "# A small number of premium hotels charge above $600 and pushing toward $1800. \n",
+ "# Budget hotels below $200 and ultra-luxury listings above $1200 are comparatively rare. \n",
+ "# Overall, the market shows a dense middle segment with only a limited supply of low-cost or high-end options."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "21a4bc02",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "alignmentgroup": "True",
+ "bingroup": "x",
+ "hovertemplate": "Review Score=%{x}
count=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "pattern": {
+ "shape": ""
+ }
+ },
+ "name": "",
+ "nbinsx": 10,
+ "offsetgroup": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "histogram",
+ "x": [
+ 8.4,
+ 8.9,
+ 8.1,
+ 8.4,
+ 8.2,
+ 8.5,
+ 8.9,
+ 8,
+ 8.8,
+ 7.7,
+ 8,
+ 8.2,
+ 8.5,
+ 8.7,
+ 8.1,
+ 8.6,
+ 8.2,
+ 8.5,
+ 8.3,
+ 7.9,
+ 7.2,
+ 8.3,
+ 8.7,
+ 8.6,
+ 9.1,
+ 8.6,
+ 8.1,
+ 8.1,
+ 8.5,
+ 8,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.5,
+ 8.6,
+ 8.5,
+ 7.7,
+ 8.8,
+ 7.9,
+ 8.2,
+ 8.2,
+ 8.6,
+ 8,
+ 7.8,
+ 8.3,
+ 8.5,
+ 8.6,
+ 8.6,
+ 8.7,
+ 8.8,
+ 8.4,
+ 8.7,
+ 8.6,
+ 8.2,
+ 8.4,
+ 9.2,
+ 8.7,
+ 8.1,
+ 9.1,
+ 8.8,
+ 8.7,
+ 6.3,
+ 9,
+ 8.7,
+ 6.7,
+ 8.9,
+ 8,
+ 8.5,
+ 8.1,
+ 7.6,
+ 8.6,
+ 8,
+ 8.5,
+ 8.2,
+ 8,
+ 8.2,
+ 8.9,
+ 7.5,
+ 7.9,
+ 7.6,
+ 8.2,
+ 8.8,
+ 7.2,
+ 8.7,
+ 7.7,
+ 8.3,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.3,
+ 8.3,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8.3,
+ 8.6,
+ 7,
+ 7.9,
+ 7.7,
+ 8.2,
+ 8.2,
+ 8,
+ 9.1,
+ 7.9,
+ 7.6,
+ 8.9,
+ 7.7,
+ 8,
+ 8.4,
+ 7.9,
+ 8.7,
+ 7.4,
+ 7.4,
+ 8.6,
+ 8.3,
+ 8.1,
+ 9,
+ 8.6,
+ 8.4,
+ 8.7,
+ 8.6,
+ 7.5,
+ 7.6,
+ 7.9,
+ 8.3,
+ 7.3,
+ 8,
+ 8.3,
+ 6.3,
+ 8,
+ 8.7,
+ 9.3,
+ 8.4,
+ 8.5,
+ 7.6,
+ 8.6,
+ 7.6,
+ 8.9,
+ 7.2,
+ 9.4,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8,
+ 7.5,
+ 8.2,
+ 8.7,
+ 8.9,
+ 7.9,
+ 7.6,
+ 8.9,
+ 6.9,
+ 7.7,
+ 7.9,
+ 8.6,
+ 8.8,
+ 7.4,
+ 8.7,
+ 6,
+ 9,
+ 7.5,
+ 8.9,
+ 7.9,
+ 8.7,
+ 7.6,
+ 8.2,
+ 8.6,
+ 7.8,
+ 8,
+ 8.8,
+ 9,
+ 8.8,
+ 8.5,
+ 8,
+ 8.3,
+ 8.7,
+ 7.5,
+ 8.8,
+ 8.2,
+ 8.5,
+ 7.7,
+ 7.9,
+ 7.8,
+ 8.6,
+ 7.2,
+ 6.5,
+ 7.4,
+ 7.9,
+ 7.8,
+ 8.4,
+ 8.3,
+ 8.7,
+ 8.9,
+ 7.8,
+ 9.1,
+ 6,
+ 7.6,
+ 9.1,
+ 8.4,
+ 8.6,
+ 9,
+ 7.2,
+ 8.7,
+ 9.7,
+ 6.5,
+ 7.9,
+ 9.2,
+ 8.7,
+ 9.5,
+ 6.9,
+ 8.6,
+ 6.9,
+ 9.4,
+ 9.6,
+ 7.9,
+ 7.7,
+ 6.9,
+ 9.7
+ ],
+ "xaxis": "x",
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "barmode": "relative",
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Review Score Distribution"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Review Score"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "count"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.histogram(\n",
+ " df_hotels,\n",
+ " x=\"review_score\",\n",
+ " nbins=10,\n",
+ " title=\"Review Score Distribution\",\n",
+ " labels={\"review_score\": \"Review Score\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "57ba5bc5",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The distribution of review scores shows that most Amsterdam hotels achieve strong guest satisfaction, with the majority scoring between 7.5 and 9.0. \n",
+ "# Low-rated properties below 7.0 are rare, indicating generally high accommodation standards across the city. \n",
+ "# A small group of hotels reaches exceptional scores above 9.0, while overall the distribution leans toward higher ratings."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "62e3711f",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "alignmentgroup": "True",
+ "hovertemplate": "variable=count
stars=%{x}
Number of Hotels=%{y}",
+ "legendgroup": "count",
+ "marker": {
+ "color": "#636efa",
+ "pattern": {
+ "shape": ""
+ }
+ },
+ "name": "count",
+ "offsetgroup": "count",
+ "orientation": "v",
+ "showlegend": true,
+ "textposition": "auto",
+ "type": "bar",
+ "x": [
+ 0,
+ 1,
+ 2,
+ 3,
+ 4,
+ 5
+ ],
+ "xaxis": "x",
+ "y": [
+ 18,
+ 4,
+ 14,
+ 70,
+ 91,
+ 21
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "barmode": "relative",
+ "legend": {
+ "title": {
+ "text": "variable"
+ },
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Star Rating Distribution"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "stars"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Number of Hotels"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.bar(\n",
+ " df_hotels[\"stars\"].value_counts().sort_index(),\n",
+ " title=\"Star Rating Distribution\",\n",
+ " labels={\"index\": \"Stars\", \"value\": \"Number of Hotels\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "id": "c3bf74bd",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The star rating distribution shows that Amsterdam’s hotel market is dominated by mid-range and upper-mid-range properties, with 3-star and 4-star hotels making up the majority of listings. \n",
+ "# Luxury 5-star hotels represent a smaller but significant segment, while budget options such as 1- and 2-star hotels are relatively small.\n",
+ "# The presence of many unrated properties also highlights the large number of apartments, hostels, and boutique-style accommodations in the city."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 38,
+ "id": "8d569052",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "hovertemplate": "Stars=%{x}
Price (USD)=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "symbol": "circle"
+ },
+ "mode": "markers",
+ "name": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "scatter",
+ "x": [
+ 5,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 3,
+ 0,
+ 3,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 5,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 2,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 1,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 2,
+ 4,
+ 2,
+ 4,
+ 5,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 3,
+ 3,
+ 2,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 5,
+ 4,
+ 2,
+ 4,
+ 3,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 1,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 2,
+ 3,
+ 3,
+ 0,
+ 0,
+ 4,
+ 3,
+ 2,
+ 2,
+ 0,
+ 3,
+ 5,
+ 3,
+ 1,
+ 0,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 3,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 0,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 3,
+ 0,
+ 4,
+ 5,
+ 3,
+ 3,
+ 4,
+ 1,
+ 5,
+ 4,
+ 4,
+ 3,
+ 3,
+ 0,
+ 4,
+ 3,
+ 2,
+ 0,
+ 3,
+ 3,
+ 4,
+ 2,
+ 4,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 4,
+ 5,
+ 5,
+ 3,
+ 5,
+ 0,
+ 3,
+ 2,
+ 5,
+ 3,
+ 5,
+ 3,
+ 4,
+ 2,
+ 5,
+ 5,
+ 3,
+ 3,
+ 3,
+ 5
+ ],
+ "xaxis": "x",
+ "y": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Price Distribution by Star Rating"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Stars"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Price (USD)"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter(\n",
+ " df_hotels,\n",
+ " x=\"stars\",\n",
+ " y=\"price\",\n",
+ " title=\"Price Distribution by Star Rating\",\n",
+ " labels={\"stars\": \"Stars\", \"price\": \"Price (USD)\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "aadfc446",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# SABINA COMMENT: This should have multiple boxplots because the \"Stars\" variable\n",
+ "# is categorical, so a scatterplot is not appropriate. \n",
+ "# You can't really tell just how concentrated the points are,\n",
+ "# as there could be many points overlapping\n",
+ "# However, your chart analysis is still correct, so well done!"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "63ddd948",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Each star category shows its own typical price range, with higher stars generally trending toward higher prices.\n",
+ "# Despite this trend, the price ranges overlap noticeably across categories.\n",
+ "# Most hotels within each star rating cluster in a predictable “normal” price band.\n",
+ "# Several hotels fall far outside these typical bands, especially in the 1-, 2-, and 3-star groups.\n",
+ "# These outliers are priced at levels comparable to higher-star properties and appear disproportionately expensive for their category.\n",
+ "# Overall, the chart highlights both the usual pricing patterns for each star level and the presence of clearly overpriced exceptions."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 116,
+ "id": "1818eefc",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "hovertemplate": "Review Score=%{x}
Price (USD)=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "symbol": "circle"
+ },
+ "mode": "markers",
+ "name": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "scatter",
+ "x": [
+ 8.4,
+ 8.9,
+ 8.1,
+ 8.4,
+ 8.2,
+ 8.5,
+ 8.9,
+ 8,
+ 8.8,
+ 7.7,
+ 8,
+ 8.2,
+ 8.5,
+ 8.7,
+ 8.1,
+ 8.6,
+ 8.2,
+ 8.5,
+ 8.3,
+ 7.9,
+ 7.2,
+ 8.3,
+ 8.7,
+ 8.6,
+ 9.1,
+ 8.6,
+ 8.1,
+ 8.1,
+ 8.5,
+ 8,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.5,
+ 8.6,
+ 8.5,
+ 7.7,
+ 8.8,
+ 7.9,
+ 8.2,
+ 8.2,
+ 8.6,
+ 8,
+ 7.8,
+ 8.3,
+ 8.5,
+ 8.6,
+ 8.6,
+ 8.7,
+ 8.8,
+ 8.4,
+ 8.7,
+ 8.6,
+ 8.2,
+ 8.4,
+ 9.2,
+ 8.7,
+ 8.1,
+ 9.1,
+ 8.8,
+ 8.7,
+ 6.3,
+ 9,
+ 8.7,
+ 6.7,
+ 8.9,
+ 8,
+ 8.5,
+ 8.1,
+ 7.6,
+ 8.6,
+ 8,
+ 8.5,
+ 8.2,
+ 8,
+ 8.2,
+ 8.9,
+ 7.5,
+ 7.9,
+ 7.6,
+ 8.2,
+ 8.8,
+ 7.2,
+ 8.7,
+ 7.7,
+ 8.3,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.3,
+ 8.3,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8.3,
+ 8.6,
+ 7,
+ 7.9,
+ 7.7,
+ 8.2,
+ 8.2,
+ 8,
+ 9.1,
+ 7.9,
+ 7.6,
+ 8.9,
+ 7.7,
+ 8,
+ 8.4,
+ 7.9,
+ 8.7,
+ 7.4,
+ 7.4,
+ 8.6,
+ 8.3,
+ 8.1,
+ 9,
+ 8.6,
+ 8.4,
+ 8.7,
+ 8.6,
+ 7.5,
+ 7.6,
+ 7.9,
+ 8.3,
+ 7.3,
+ 8,
+ 8.3,
+ 6.3,
+ 8,
+ 8.7,
+ 9.3,
+ 8.4,
+ 8.5,
+ 7.6,
+ 8.6,
+ 7.6,
+ 8.9,
+ 7.2,
+ 9.4,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8,
+ 7.5,
+ 8.2,
+ 8.7,
+ 8.9,
+ 7.9,
+ 7.6,
+ 8.9,
+ 6.9,
+ 7.7,
+ 7.9,
+ 8.6,
+ 8.8,
+ 7.4,
+ 8.7,
+ 6,
+ 9,
+ 7.5,
+ 8.9,
+ 7.9,
+ 8.7,
+ 7.6,
+ 8.2,
+ 8.6,
+ 7.8,
+ 8,
+ 8.8,
+ 9,
+ 8.8,
+ 8.5,
+ 8,
+ 8.3,
+ 8.7,
+ 7.5,
+ 8.8,
+ 8.2,
+ 8.5,
+ 7.7,
+ 7.9,
+ 7.8,
+ 8.6,
+ 7.2,
+ 6.5,
+ 7.4,
+ 7.9,
+ 7.8,
+ 8.4,
+ 8.3,
+ 8.7,
+ 8.9,
+ 7.8,
+ 9.1,
+ 6,
+ 7.6,
+ 9.1,
+ 8.4,
+ 8.6,
+ 9,
+ 7.2,
+ 8.7,
+ 9.7,
+ 6.5,
+ 7.9,
+ 9.2,
+ 8.7,
+ 9.5,
+ 6.9,
+ 8.6,
+ 6.9,
+ 9.4,
+ 9.6,
+ 7.9,
+ 7.7,
+ 6.9,
+ 9.7
+ ],
+ "xaxis": "x",
+ "y": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Price vs Review Score"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Review Score"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Price (USD)"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter(\n",
+ " df_hotels,\n",
+ " x=\"review_score\",\n",
+ " y=\"price\",\n",
+ " \n",
+ " title=\"Price vs Review Score\",\n",
+ " labels={\"review_score\": \"Review Score\", \"price\": \"Price (USD)\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "5d0aeff1",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The chart shows a group of hotels with review scores below 7 that are priced unusually high, including several extreme outliers above $1,000–$1,800, making them appear clearly overpriced relative to guest satisfaction.\n",
+ "# Starting from review score 7 and upwards, the price trend becomes more structured, with fewer low-scoring hotels in the expensive price zones.\n",
+ "# As review scores increase, there is a visible rise in price, especially past the 8.0 threshold where more hotels enter the premium range (above $500 and up to $1,700+).\n",
+ "# High-rated hotels (8.5–9.5) include many of the most expensive properties, which aligns with guests being willing to pay more for better-reviewed accommodations.\n",
+ "# The overall pattern suggests a clear link between good review scores and higher prices, but also exposes a group of poorly reviewed properties that still charge premium rates.\n",
+ "# This combination highlights both logical pricing (high score → higher price) and questionable pricing (low score → high price), making the inconsistencies easy to identify."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "db5ba6c1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "hovertemplate": "Review Score=%{x}
Stars=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "symbol": "circle"
+ },
+ "mode": "markers",
+ "name": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "scatter",
+ "x": [
+ 8.4,
+ 8.9,
+ 8.1,
+ 8.4,
+ 8.2,
+ 8.5,
+ 8.9,
+ 8,
+ 8.8,
+ 7.7,
+ 8,
+ 8.2,
+ 8.5,
+ 8.7,
+ 8.1,
+ 8.6,
+ 8.2,
+ 8.5,
+ 8.3,
+ 7.9,
+ 7.2,
+ 8.3,
+ 8.7,
+ 8.6,
+ 9.1,
+ 8.6,
+ 8.1,
+ 8.1,
+ 8.5,
+ 8,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.5,
+ 8.6,
+ 8.5,
+ 7.7,
+ 8.8,
+ 7.9,
+ 8.2,
+ 8.2,
+ 8.6,
+ 8,
+ 7.8,
+ 8.3,
+ 8.5,
+ 8.6,
+ 8.6,
+ 8.7,
+ 8.8,
+ 8.4,
+ 8.7,
+ 8.6,
+ 8.2,
+ 8.4,
+ 9.2,
+ 8.7,
+ 8.1,
+ 9.1,
+ 8.8,
+ 8.7,
+ 6.3,
+ 9,
+ 8.7,
+ 6.7,
+ 8.9,
+ 8,
+ 8.5,
+ 8.1,
+ 7.6,
+ 8.6,
+ 8,
+ 8.5,
+ 8.2,
+ 8,
+ 8.2,
+ 8.9,
+ 7.5,
+ 7.9,
+ 7.6,
+ 8.2,
+ 8.8,
+ 7.2,
+ 8.7,
+ 7.7,
+ 8.3,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.3,
+ 8.3,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8.3,
+ 8.6,
+ 7,
+ 7.9,
+ 7.7,
+ 8.2,
+ 8.2,
+ 8,
+ 9.1,
+ 7.9,
+ 7.6,
+ 8.9,
+ 7.7,
+ 8,
+ 8.4,
+ 7.9,
+ 8.7,
+ 7.4,
+ 7.4,
+ 8.6,
+ 8.3,
+ 8.1,
+ 9,
+ 8.6,
+ 8.4,
+ 8.7,
+ 8.6,
+ 7.5,
+ 7.6,
+ 7.9,
+ 8.3,
+ 7.3,
+ 8,
+ 8.3,
+ 6.3,
+ 8,
+ 8.7,
+ 9.3,
+ 8.4,
+ 8.5,
+ 7.6,
+ 8.6,
+ 7.6,
+ 8.9,
+ 7.2,
+ 9.4,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8,
+ 7.5,
+ 8.2,
+ 8.7,
+ 8.9,
+ 7.9,
+ 7.6,
+ 8.9,
+ 6.9,
+ 7.7,
+ 7.9,
+ 8.6,
+ 8.8,
+ 7.4,
+ 8.7,
+ 6,
+ 9,
+ 7.5,
+ 8.9,
+ 7.9,
+ 8.7,
+ 7.6,
+ 8.2,
+ 8.6,
+ 7.8,
+ 8,
+ 8.8,
+ 9,
+ 8.8,
+ 8.5,
+ 8,
+ 8.3,
+ 8.7,
+ 7.5,
+ 8.8,
+ 8.2,
+ 8.5,
+ 7.7,
+ 7.9,
+ 7.8,
+ 8.6,
+ 7.2,
+ 6.5,
+ 7.4,
+ 7.9,
+ 7.8,
+ 8.4,
+ 8.3,
+ 8.7,
+ 8.9,
+ 7.8,
+ 9.1,
+ 6,
+ 7.6,
+ 9.1,
+ 8.4,
+ 8.6,
+ 9,
+ 7.2,
+ 8.7,
+ 9.7,
+ 6.5,
+ 7.9,
+ 9.2,
+ 8.7,
+ 9.5,
+ 6.9,
+ 8.6,
+ 6.9,
+ 9.4,
+ 9.6,
+ 7.9,
+ 7.7,
+ 6.9,
+ 9.7
+ ],
+ "xaxis": "x",
+ "y": [
+ 5,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 3,
+ 0,
+ 3,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 5,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 2,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 1,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 2,
+ 4,
+ 2,
+ 4,
+ 5,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 3,
+ 3,
+ 2,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 5,
+ 4,
+ 2,
+ 4,
+ 3,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 1,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 2,
+ 3,
+ 3,
+ 0,
+ 0,
+ 4,
+ 3,
+ 2,
+ 2,
+ 0,
+ 3,
+ 5,
+ 3,
+ 1,
+ 0,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 3,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 0,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 3,
+ 0,
+ 4,
+ 5,
+ 3,
+ 3,
+ 4,
+ 1,
+ 5,
+ 4,
+ 4,
+ 3,
+ 3,
+ 0,
+ 4,
+ 3,
+ 2,
+ 0,
+ 3,
+ 3,
+ 4,
+ 2,
+ 4,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 4,
+ 5,
+ 5,
+ 3,
+ 5,
+ 0,
+ 3,
+ 2,
+ 5,
+ 3,
+ 5,
+ 3,
+ 4,
+ 2,
+ 5,
+ 5,
+ 3,
+ 3,
+ 3,
+ 5
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Review Score vs Star Rating"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Review Score"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Stars"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter(\n",
+ " df_hotels,\n",
+ " x=\"review_score\",\n",
+ " y=\"stars\",\n",
+ " title=\"Review Score vs Star Rating\",\n",
+ " labels={\"stars\": \"Stars\", \"review_score\": \"Review Score\"},\n",
+ ")\n",
+ "fig.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "080b66d0",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# SABINA COMMENT: This should also have boxplots."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "id": "d7325016",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Higher-star hotels generally receive higher review scores, especially 4- and 5-star properties, which cluster mostly between 8.0 and 9.5.\n",
+ "# Lower-star hotels (0–2 stars) show a wider spread, ranging from 6.0 up to 8.5, meaning some deliver excellent value despite their low rating.\n",
+ "# The 3-star group shows the widest range of review scores spanning from 6.0 to 9.0.\n",
+ "# Overall, while review scores tend to rise with star rating, the significant overlap shows that guest satisfaction varies widely within each category."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "a928524f",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "alignmentgroup": "True",
+ "hovertemplate": "Stars=%{x}
Review Score=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa"
+ },
+ "name": "",
+ "notched": false,
+ "offsetgroup": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "box",
+ "x": [
+ 5,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 3,
+ 0,
+ 3,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 5,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 2,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 1,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 2,
+ 4,
+ 2,
+ 4,
+ 5,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 3,
+ 3,
+ 2,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 5,
+ 4,
+ 2,
+ 4,
+ 3,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 1,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 2,
+ 3,
+ 3,
+ 0,
+ 0,
+ 4,
+ 3,
+ 2,
+ 2,
+ 0,
+ 3,
+ 5,
+ 3,
+ 1,
+ 0,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 3,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 0,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 3,
+ 0,
+ 4,
+ 5,
+ 3,
+ 3,
+ 4,
+ 1,
+ 5,
+ 4,
+ 4,
+ 3,
+ 3,
+ 0,
+ 4,
+ 3,
+ 2,
+ 0,
+ 3,
+ 3,
+ 4,
+ 2,
+ 4,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 4,
+ 5,
+ 5,
+ 3,
+ 5,
+ 0,
+ 3,
+ 2,
+ 5,
+ 3,
+ 5,
+ 3,
+ 4,
+ 2,
+ 5,
+ 5,
+ 3,
+ 3,
+ 3,
+ 5
+ ],
+ "x0": " ",
+ "xaxis": "x",
+ "y": [
+ 8.4,
+ 8.9,
+ 8.1,
+ 8.4,
+ 8.2,
+ 8.5,
+ 8.9,
+ 8,
+ 8.8,
+ 7.7,
+ 8,
+ 8.2,
+ 8.5,
+ 8.7,
+ 8.1,
+ 8.6,
+ 8.2,
+ 8.5,
+ 8.3,
+ 7.9,
+ 7.2,
+ 8.3,
+ 8.7,
+ 8.6,
+ 9.1,
+ 8.6,
+ 8.1,
+ 8.1,
+ 8.5,
+ 8,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.5,
+ 8.6,
+ 8.5,
+ 7.7,
+ 8.8,
+ 7.9,
+ 8.2,
+ 8.2,
+ 8.6,
+ 8,
+ 7.8,
+ 8.3,
+ 8.5,
+ 8.6,
+ 8.6,
+ 8.7,
+ 8.8,
+ 8.4,
+ 8.7,
+ 8.6,
+ 8.2,
+ 8.4,
+ 9.2,
+ 8.7,
+ 8.1,
+ 9.1,
+ 8.8,
+ 8.7,
+ 6.3,
+ 9,
+ 8.7,
+ 6.7,
+ 8.9,
+ 8,
+ 8.5,
+ 8.1,
+ 7.6,
+ 8.6,
+ 8,
+ 8.5,
+ 8.2,
+ 8,
+ 8.2,
+ 8.9,
+ 7.5,
+ 7.9,
+ 7.6,
+ 8.2,
+ 8.8,
+ 7.2,
+ 8.7,
+ 7.7,
+ 8.3,
+ 8.4,
+ 8.7,
+ 8.5,
+ 8.3,
+ 8.3,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8.3,
+ 8.6,
+ 7,
+ 7.9,
+ 7.7,
+ 8.2,
+ 8.2,
+ 8,
+ 9.1,
+ 7.9,
+ 7.6,
+ 8.9,
+ 7.7,
+ 8,
+ 8.4,
+ 7.9,
+ 8.7,
+ 7.4,
+ 7.4,
+ 8.6,
+ 8.3,
+ 8.1,
+ 9,
+ 8.6,
+ 8.4,
+ 8.7,
+ 8.6,
+ 7.5,
+ 7.6,
+ 7.9,
+ 8.3,
+ 7.3,
+ 8,
+ 8.3,
+ 6.3,
+ 8,
+ 8.7,
+ 9.3,
+ 8.4,
+ 8.5,
+ 7.6,
+ 8.6,
+ 7.6,
+ 8.9,
+ 7.2,
+ 9.4,
+ 8.4,
+ 8.5,
+ 8.9,
+ 8,
+ 7.5,
+ 8.2,
+ 8.7,
+ 8.9,
+ 7.9,
+ 7.6,
+ 8.9,
+ 6.9,
+ 7.7,
+ 7.9,
+ 8.6,
+ 8.8,
+ 7.4,
+ 8.7,
+ 6,
+ 9,
+ 7.5,
+ 8.9,
+ 7.9,
+ 8.7,
+ 7.6,
+ 8.2,
+ 8.6,
+ 7.8,
+ 8,
+ 8.8,
+ 9,
+ 8.8,
+ 8.5,
+ 8,
+ 8.3,
+ 8.7,
+ 7.5,
+ 8.8,
+ 8.2,
+ 8.5,
+ 7.7,
+ 7.9,
+ 7.8,
+ 8.6,
+ 7.2,
+ 6.5,
+ 7.4,
+ 7.9,
+ 7.8,
+ 8.4,
+ 8.3,
+ 8.7,
+ 8.9,
+ 7.8,
+ 9.1,
+ 6,
+ 7.6,
+ 9.1,
+ 8.4,
+ 8.6,
+ 9,
+ 7.2,
+ 8.7,
+ 9.7,
+ 6.5,
+ 7.9,
+ 9.2,
+ 8.7,
+ 9.5,
+ 6.9,
+ 8.6,
+ 6.9,
+ 9.4,
+ 9.6,
+ 7.9,
+ 7.7,
+ 6.9,
+ 9.7
+ ],
+ "y0": " ",
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "boxmode": "group",
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Review Score Distribution by Star Rating"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Stars"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Review Score"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.box(\n",
+ " df_hotels,\n",
+ " x=\"stars\",\n",
+ " y=\"review_score\",\n",
+ " title=\"Review Score Distribution by Star Rating\",\n",
+ " labels={\"stars\": \"Stars\", \"review_score\": \"Review Score\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "ba7acc50",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# SABINA COMMENT: YAY BOXPLOTS!"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "34572a89",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Higher-star hotels tend to achieve higher review scores, with 4 and 5-star categories centered around 8.5–9.0.\n",
+ "# Lower-star hotels (1–2 stars) have noticeably lower medians, mostly around 7.3–7.7, indicating more modest guest satisfaction.\n",
+ "# The 3-star segment shows a wide spread of scores, from 6.0 up to almost 9.0, making it the most inconsistent group in terms of guest experience.\n",
+ "# Unrated (0-star) hotels surprisingly score quite well, with many reviews falling between 8.0–9.0, showing strong performance despite lacking an official rating.\n",
+ "# Overall, while review scores rise with star level, the variation within each category—especially 0-star and 3-star hotels—shows that guest satisfaction is not perfectly aligned with official star rating."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "b9937014",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "hovertemplate": "Number of Reviews=%{x}
Price (USD)=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "symbol": "circle"
+ },
+ "mode": "markers",
+ "name": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "scatter",
+ "x": [
+ 2869,
+ 3874,
+ 3679,
+ 4817,
+ 12096,
+ 6343,
+ 134,
+ 12687,
+ 1735,
+ 9837,
+ 660,
+ 4758,
+ 5026,
+ 8811,
+ 13132,
+ 8717,
+ 10359,
+ 1343,
+ 1052,
+ 17901,
+ 2144,
+ 3203,
+ 1361,
+ 3464,
+ 3901,
+ 978,
+ 9671,
+ 15319,
+ 10289,
+ 3553,
+ 20821,
+ 9124,
+ 4538,
+ 3036,
+ 8693,
+ 552,
+ 2482,
+ 5664,
+ 3692,
+ 2292,
+ 737,
+ 9065,
+ 2237,
+ 7274,
+ 3734,
+ 3780,
+ 10905,
+ 12367,
+ 5555,
+ 1109,
+ 2927,
+ 1286,
+ 1269,
+ 5389,
+ 2897,
+ 4242,
+ 905,
+ 3001,
+ 1943,
+ 935,
+ 11156,
+ 436,
+ 4401,
+ 3207,
+ 420,
+ 6323,
+ 1754,
+ 6004,
+ 610,
+ 3910,
+ 5984,
+ 2476,
+ 1775,
+ 2201,
+ 1903,
+ 8057,
+ 3077,
+ 1920,
+ 1702,
+ 891,
+ 2278,
+ 2265,
+ 2817,
+ 1859,
+ 5080,
+ 2929,
+ 563,
+ 1925,
+ 3327,
+ 17522,
+ 7578,
+ 7421,
+ 2757,
+ 1051,
+ 6140,
+ 1315,
+ 1653,
+ 7926,
+ 1376,
+ 1774,
+ 1842,
+ 3332,
+ 525,
+ 5284,
+ 2375,
+ 1697,
+ 866,
+ 1943,
+ 2206,
+ 1551,
+ 3011,
+ 5340,
+ 8262,
+ 2508,
+ 2129,
+ 4268,
+ 1993,
+ 3694,
+ 2681,
+ 599,
+ 4079,
+ 2447,
+ 1630,
+ 8270,
+ 7850,
+ 3258,
+ 1023,
+ 5593,
+ 1967,
+ 1660,
+ 3772,
+ 2338,
+ 2923,
+ 2329,
+ 2751,
+ 1275,
+ 3098,
+ 9845,
+ 4601,
+ 79,
+ 4172,
+ 10627,
+ 2709,
+ 2030,
+ 1609,
+ 1709,
+ 1943,
+ 1019,
+ 4926,
+ 2014,
+ 226,
+ 3230,
+ 6151,
+ 2678,
+ 804,
+ 751,
+ 188,
+ 5278,
+ 4476,
+ 10472,
+ 4805,
+ 1505,
+ 3284,
+ 1190,
+ 1154,
+ 4303,
+ 1001,
+ 1523,
+ 3191,
+ 1327,
+ 1501,
+ 1370,
+ 446,
+ 15598,
+ 2239,
+ 3514,
+ 3173,
+ 1501,
+ 2343,
+ 4057,
+ 2065,
+ 3983,
+ 318,
+ 5918,
+ 3559,
+ 1754,
+ 249,
+ 1285,
+ 5883,
+ 7118,
+ 1059,
+ 2377,
+ 1698,
+ 7044,
+ 1072,
+ 49,
+ 3104,
+ 251,
+ 2572,
+ 317,
+ 852,
+ 2840,
+ 59,
+ 94,
+ 1994,
+ 942,
+ 394,
+ 7986,
+ 216,
+ 1576,
+ 1887,
+ 860,
+ 646,
+ 259,
+ 3497,
+ 3730,
+ 3922,
+ 15
+ ],
+ "xaxis": "x",
+ "y": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Price vs Review Count"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Number of Reviews"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Price (USD)"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter(\n",
+ " df_hotels,\n",
+ " x=\"review_count\",\n",
+ " y=\"price\",\n",
+ " title=\"Price vs Review Count\",\n",
+ " labels={\"review_count\": \"Number of Reviews\", \"price\": \"Price (USD)\"},\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "203ef0df",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# Properties with very few reviews often show the highest prices, which may indicate either exclusive luxury hotels or newly listed accommodations with limited guest history.\n",
+ "# As the number of reviews increases, hotel prices become more stable and predictable, mostly falling between $200–$500.\n",
+ "# Hotels with thousands of reviews tend to sit on the lower end of the price range, likely because they appeal to budget-conscious travellers, students, or high-volume tourist groups.\n",
+ "# Overall, high review count is associated with popularity rather than premium pricing, while low review count shows a mix of luxury properties and potential overpricing, depending on the context.\n",
+ "\n",
+ "# SABINA COMMENT: What about the 2 outliers at 5K reviews? ;) Who are they?"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 48,
+ "id": "e5aedea5",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "hovertemplate": "%{hovertext}
Longitude=%{x}
Latitude=%{y}
Price (USD)=%{marker.color}",
+ "hovertext": [
+ "Hyatt Regency Amsterdam",
+ "Chasse Residency Hotel",
+ "Swissôtel Amsterdam",
+ "Holiday Inn - the niu, Fender Amsterdam",
+ "Holiday Inn Express Amsterdam - North Riverside by IHG",
+ "Mövenpick Hotel Amsterdam City Centre",
+ "Hotel V Oosterpark",
+ "Hans Brinker Hostel Amsterdam",
+ "Citadines Canal Amsterdam",
+ "ibis Amsterdam Centre",
+ "Renaissance Amsterdam Hotel",
+ "Hotel Van Gogh",
+ "Mercure Amsterdam Sloterdijk Station",
+ "Ruby Emma Hotel Amsterdam",
+ "Hampton By Hilton Amsterdam Arena Boulevard",
+ "Park Plaza Victoria Amsterdam",
+ "Inntel Hotels Amsterdam Landmark",
+ "Apollo Hotel Amsterdam, a Tribute Portfolio Hotel",
+ "DoubleTree by Hilton Amsterdam Centraal Station",
+ "Holiday Inn Express Amsterdam Arena Towers by IHG",
+ "ITC Hotel",
+ "Holiday Inn Express Amsterdam - City Hall by IHG",
+ "Sir Adam Hotel, part of Sircle Collection",
+ "Bob W Amsterdam Noord",
+ "Monet Garden Hotel Amsterdam",
+ "Bob W Oosterpark",
+ "Holiday Inn Express Amsterdam - Sloterdijk Station by IHG",
+ "Via Amsterdam",
+ "Postillion Hotel Amsterdam",
+ "Hotel Hortus",
+ "Park Inn by Radisson Amsterdam City West",
+ "XO Hotels Couture",
+ "Clayton Hotel Amsterdam American",
+ "DoubleTree by Hilton Amsterdam - NDSM Wharf",
+ "Olympic Hotel",
+ "Sir Albert Hotel, part of Sircle Collection",
+ "The Concert Hotel",
+ "Van der Valk Hotel Amsterdam - Amstel",
+ "ibis Amsterdam Centre Stopera",
+ "ibis Styles Amsterdam City",
+ "Stanley Collection Hotel Hegra Amsterdam",
+ "Leonardo Royal Hotel Amsterdam",
+ "ibis Styles Amsterdam Amstel",
+ "Joy Hotel",
+ "Mercure Amsterdam City Hotel",
+ "Pestana Amsterdam Riverside",
+ "The Social Hub Amsterdam City",
+ "Motel One Amsterdam",
+ "Van der Valk Hotel Amsterdam Zuidas -Rai",
+ "Avani Museum Quarter Amsterdam Hotel",
+ "Hampton by Hilton Amsterdam Centre East",
+ "Crowne Plaza Amsterdam - South by IHG",
+ "Residence Inn by Marriott Amsterdam Houthavens",
+ "Inntel Hotels Amsterdam Centre",
+ "Conscious Hotel The Tire Station",
+ "Hotel Estheréa",
+ "Canal House",
+ "Leonardo Boutique Museumhotel",
+ "PREMIER SUITES Amsterdam",
+ "Banks Mansion - All Inclusive Boutique Hotel",
+ "Jaz in the City Amsterdam",
+ "Camp-Inn Hotel",
+ "Mercure Amsterdam North Station",
+ "Huygens Place Amsterdam",
+ "Triple G Hotels",
+ "INNSiDE by Meliá Amsterdam",
+ "Leonardo Hotel Amsterdam City Center",
+ "Novotel Amsterdam City",
+ "The Crown Hotel",
+ "Fletcher Hotel Amsterdam",
+ "Room Mate Aitana, Amsterdam",
+ "NH Amsterdam Schiller",
+ "Adam Suites Hotel",
+ "Moxy Amsterdam Houthavens",
+ "The Times Hotel",
+ "XO Hotels Blue Tower",
+ "citizenM Amstel Amsterdam",
+ "Hotel Atlas Vondelpark",
+ "Hotel Fine Harmony",
+ "W Amsterdam",
+ "De Bedstee Boutique Capsules",
+ "Kimpton De Witt Amsterdam by IHG",
+ "Hotel Washington",
+ "Dikker & Thijs Hotel",
+ "Mozart Hotel",
+ "Hotel Arena",
+ "The Diamond Amsterdam",
+ "The Bank Hotel",
+ "Courtyard by Marriott Amsterdam Arena Atlas",
+ "Hotel Levell",
+ "YOTEL Amsterdam",
+ "Bunk Hotel Amsterdam",
+ "Conscious Hotel Westerpark",
+ "Hotel Okura Amsterdam – The Leading Hotels of the World",
+ "Hotel New Kit",
+ "Boutique Hotel View",
+ "Quentin England Hotel",
+ "Generator Amsterdam",
+ "De Jonker Urban Suites",
+ "Hotel Mansion",
+ "Leonardo Hotel Amsterdam Leidse Square",
+ "ibis Amsterdam City West",
+ "Morgan & Mees Amsterdam",
+ "XO Hotel Inner",
+ "Hotel Allure",
+ "Met Hotel Amsterdam",
+ "Limehome Amsterdam Gatwickstraat",
+ "Quentin Zoo hotel",
+ "The Manor Amsterdam",
+ "Amsterdam Marriott Hotel",
+ "Boutique Hotel Notting Hill",
+ "Nadia Hotel",
+ "OZO Hotels Arena Amsterdam",
+ "Krisotel",
+ "Nova Hotel",
+ "Holiday Inn Amsterdam - Arena Towers by IHG",
+ "Element Amsterdam",
+ "Pension Homeland",
+ "Park Centraal Amsterdam, part of Sircle Collection",
+ "Nova Apartments Amsterdam",
+ "Park Plaza Vondelpark Amsterdam",
+ "Mercure Hotel Amsterdam West",
+ "Hotel Espresso",
+ "XO Hotels Blue Square",
+ "Leonardo Hotel Amsterdam Rembrandtpark",
+ "The Old Nickel Hotel",
+ "Max Brown Hotel Canal District, part of Sircle Collection",
+ "Corendon Amsterdam New-West, a Tribute Portfolio Hotel",
+ "Quentin Amsterdam Hotel",
+ "NH Amsterdam Caransa",
+ "Hotel2Stay",
+ "The July - Boat & Co",
+ "Urban Lodge Hotel",
+ "Conscious Hotel Vondelpark",
+ "easyHotel Amsterdam City Centre South",
+ "The IF Boutique hotel",
+ "Hotel Old Quarter",
+ "Hotel Casa Amsterdam",
+ "Delta Hotel City Center",
+ "Studio Koggeschip",
+ "Hotel Jansen Amsterdam Bajeskwartier",
+ "XO Hotels Park West",
+ "Amsterdam ID Aparthotel",
+ "Weber Hotel",
+ "Hotel Pagi",
+ "Golden Mansion Aparthotel",
+ "Hotel Fita",
+ "Pulitzer Amsterdam",
+ "Qbic Amsterdam WTC",
+ "Hotel Corner House",
+ "Amsterdam-Houseboat-Amstel",
+ "OZO Hotels Cordial Amsterdam",
+ "The Alfred Hotel",
+ "Bilderberg Garden Hotel",
+ "hotel calisto",
+ "Andaz Amsterdam, Prinsengracht, By Hyatt",
+ "Hotel Victorie",
+ "Volkshotel",
+ "Belfort Hotel",
+ "nhow Amsterdam Rai",
+ "Avenue Hotel",
+ "Jan Luyken Amsterdam",
+ "Heart of Amsterdam Hostel",
+ "Conscious Hotel Museum Square",
+ "Cityview Hotel",
+ "Four Elements Hotel",
+ "NH Amsterdam Noord",
+ "Ciao Papa Hotel Amsterdam Central Station",
+ "Holiday Inn Express Amsterdam - South by IHG",
+ "Hotel Omega",
+ "Outside Inn",
+ "INK Hotel Amsterdam - MGallery Collection",
+ "The College Hotel Amsterdam, Autograph Collection",
+ "ClinkNOORD Hostel",
+ "Hotel Residence Le Coin",
+ "art'otel amsterdam, Powered by Radisson Hotels",
+ "Hotel Abba",
+ "Tivoli Doelen Amsterdam Hotel",
+ "NH Amsterdam Zuid",
+ "The Social Hub Amsterdam West 4 star",
+ "Hotel Park Plantage",
+ "Hotel & Wellness Zuiver",
+ "Limehome Amsterdam Leidsekruisstraat",
+ "citizenM Amsterdam South",
+ "Bastion Hotel Amsterdam Amstel",
+ "MAX Hotel Amsterdam",
+ "City Rooms Amsterdam Hemonystraat - Digital access",
+ "Max Brown Hotel Museum Square, part of Sircle Collection",
+ "Hotel Fogo Amsterdam",
+ "Radisson Blu Hotel, Amsterdam City Center",
+ "Weber Hotel 397",
+ "The Delphi - Amsterdam Townhouse",
+ "Skotel Amsterdam, Hotelschool The Hague",
+ "XO Hotels Infinity",
+ "The July - Twenty Eight",
+ "Westlake Hotels Amsterdam",
+ "Leonardo Boutique Hotel The Lancaster Hotel Amsterdam",
+ "Conservatorium Hotel - Operated by Mandarin Oriental",
+ "Via Suites",
+ "InterContinental Amstel Amsterdam by IHG",
+ "Sofitel Legend The Grand Amsterdam",
+ "Q-Factory Hotel",
+ "Rosewood Amsterdam",
+ "Leidse Square 5 star Luxury Apartment",
+ "OZO Hotels Armada Amsterdam",
+ "Weber Hotel 117",
+ "De L’Europe Amsterdam – The Leading Hotels of the World",
+ "Motel One Amsterdam-Waterlooplein",
+ "Waldorf Astoria Amsterdam",
+ "Bastion Hotel Amsterdam Zuidwest",
+ "The Hoxton Lloyd Amsterdam City Centre East",
+ "Quentin Golden Bear Hotel",
+ "Pillows Grand Boutique Hotel Maurits at the Park - Small Luxury Hotels",
+ "Hotel TwentySeven - Small Luxury Hotels of the World",
+ "Prinsengracht Hotel",
+ "Campanile Hotel & Restaurant Amsterdam Zuid-Oost",
+ "Hotel Doria",
+ "Crane Hotel Faralda"
+ ],
+ "legendgroup": "",
+ "marker": {
+ "color": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "coloraxis": "coloraxis",
+ "size": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "sizemode": "area",
+ "sizeref": 4.55115,
+ "symbol": "circle"
+ },
+ "mode": "markers",
+ "name": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "scatter",
+ "x": [
+ 4.911744,
+ 4.924964,
+ 4.89331215620041,
+ 4.9463418,
+ 4.91952350926207,
+ 4.91414219141006,
+ 4.92270692381791,
+ 4.88805460000003,
+ 4.893588,
+ 4.89696532487869,
+ 4.89438101649284,
+ 4.88014921545982,
+ 4.834296,
+ 4.92086,
+ 4.94809359312057,
+ 4.89777535200119,
+ 4.92843508863831,
+ 4.88510727882385,
+ 4.90566909313202,
+ 4.94186959259036,
+ 4.89858202636242,
+ 4.90835,
+ 4.90240858888546,
+ 4.90684051779097,
+ 4.90726228255619,
+ 4.9285033,
+ 4.83745515346527,
+ 4.953709,
+ 4.92219427514647,
+ 4.90905001759529,
+ 4.842565,
+ 4.84125409510648,
+ 4.881296,
+ 4.89350185850526,
+ 4.853175,
+ 4.88731205463409,
+ 4.87704757601023,
+ 4.91446652778632,
+ 4.90765661001205,
+ 4.90066040307283,
+ 4.88726913928986,
+ 4.917847,
+ 4.90029025822878,
+ 4.95023131370544,
+ 4.9135098606348,
+ 4.90716399999997,
+ 4.91263214907383,
+ 4.89257459999999,
+ 4.887724,
+ 4.88620162010193,
+ 4.934809346,
+ 4.87454742193222,
+ 4.874767,
+ 4.89444941282272,
+ 4.85544981739667,
+ 4.88849088549614,
+ 4.88632701337337,
+ 4.88415978848934,
+ 4.86796079629515,
+ 4.89309288561344,
+ 4.93931620000001,
+ 4.85761788032187,
+ 4.931234,
+ 4.87563338130713,
+ 4.85784,
+ 4.87108765145111,
+ 4.87834140658379,
+ 4.88854050636292,
+ 4.89999,
+ 4.94534432888031,
+ 4.89465280000002,
+ 4.8966957628727,
+ 4.8869948329575,
+ 4.874811,
+ 4.88894149661064,
+ 4.84565332531929,
+ 4.905943,
+ 4.87398952245712,
+ 4.90481983743439,
+ 4.89000590000001,
+ 4.87775735557079,
+ 4.8955395,
+ 4.88353483378887,
+ 4.88395091146231,
+ 4.88622978329659,
+ 4.91579040884972,
+ 4.8833159,
+ 4.89037379622459,
+ 4.94645200000002,
+ 4.95098888346706,
+ 4.903551,
+ 4.91425,
+ 4.87529649999999,
+ 4.89281058311462,
+ 4.837766,
+ 4.87977102398872,
+ 4.87710893154144,
+ 4.91903621904908,
+ 4.91230891408611,
+ 4.90487689999998,
+ 4.878342,
+ 4.8501044511795,
+ 4.87461831349185,
+ 4.87741805613041,
+ 4.91056948900223,
+ 4.835317,
+ 4.841889,
+ 4.911423,
+ 4.92611087858677,
+ 4.87966239452362,
+ 4.89892099052668,
+ 4.88560751080513,
+ 4.94765461349175,
+ 4.879751,
+ 4.89013105630875,
+ 4.94188032142642,
+ 4.87750001904908,
+ 4.91685894973762,
+ 4.88302554935217,
+ 4.87975794821978,
+ 4.86642569303513,
+ 4.81692954897881,
+ 4.87637232989073,
+ 4.82055857777596,
+ 4.84405875205994,
+ 4.89954560995102,
+ 4.89205554127693,
+ 4.83109839999997,
+ 4.87990915775299,
+ 4.89692106842995,
+ 4.8394093674591,
+ 4.88258942460629,
+ 4.83444299999996,
+ 4.85650956630707,
+ 4.89166025072336,
+ 4.90271598100662,
+ 4.89886298775673,
+ 4.91888970136643,
+ 4.89610970020294,
+ 4.89305579999996,
+ 4.924154,
+ 4.84716810286045,
+ 4.83446717262268,
+ 4.88023370504379,
+ 4.89186644554138,
+ 4.89794578650822,
+ 4.87968116998672,
+ 4.88328203558922,
+ 4.87348794937134,
+ 4.89150166511536,
+ 4.89719734750327,
+ 4.89241696894169,
+ 4.87214963988117,
+ 4.87409010529518,
+ 4.8874618914017,
+ 4.88283142447472,
+ 4.90290641784668,
+ 4.91191600000002,
+ 4.85044240951538,
+ 4.891107,
+ 4.89465594291687,
+ 4.88107189536095,
+ 4.89758223295212,
+ 4.87812280654907,
+ 4.892712,
+ 5.00559633862306,
+ 4.91089671850204,
+ 4.895241,
+ 4.8670694231987,
+ 4.875724,
+ 4.931027,
+ 4.89289775490761,
+ 4.88361194729805,
+ 4.90390362334097,
+ 4.89441722631454,
+ 4.89721544086933,
+ 4.87461045384407,
+ 4.89572614431381,
+ 4.87995475530624,
+ 4.8364,
+ 4.91136878728867,
+ 4.85347867012024,
+ 4.8853753,
+ 4.87593680620193,
+ 4.92792874574661,
+ 4.9021178483963,
+ 4.902205,
+ 4.88204687833786,
+ 4.772438482658,
+ 4.89670112729073,
+ 4.88048851490021,
+ 4.87697213888168,
+ 4.8438768,
+ 4.8208911716938,
+ 4.85753103547779,
+ 4.79466319084167,
+ 4.91293653845787,
+ 4.87848825752735,
+ 4.953825,
+ 4.90546524524689,
+ 4.8954002559185,
+ 4.93057484418023,
+ 4.88310919170289,
+ 4.8819123,
+ 4.89844556897879,
+ 4.8803501018524,
+ 4.89420533180237,
+ 4.90738492868036,
+ 4.89644229999999,
+ 4.84374225139618,
+ 4.93466,
+ 4.88519445061684,
+ 4.919684,
+ 4.89332549999995,
+ 4.89448126405478,
+ 4.98621582984924,
+ 4.89441740508482,
+ 4.89473192953028
+ ],
+ "xaxis": "x",
+ "y": [
+ 52.361798,
+ 52.351902,
+ 52.3735015639879,
+ 52.3689672,
+ 52.3841044464671,
+ 52.3778244039078,
+ 52.3618697208272,
+ 52.3636789,
+ 52.361026,
+ 52.3795419603305,
+ 52.3777675899871,
+ 52.3590558708137,
+ 52.387911,
+ 52.338347,
+ 52.3130603489422,
+ 52.3773479298031,
+ 52.3734396516721,
+ 52.3485731229379,
+ 52.3767126229996,
+ 52.3095778808935,
+ 52.3622245746876,
+ 52.370508,
+ 52.3837837705751,
+ 52.3965941042896,
+ 52.3697879175963,
+ 52.3549487,
+ 52.3882024042909,
+ 52.326207,
+ 52.3336117162739,
+ 52.3667708460243,
+ 52.390137,
+ 52.3511038699022,
+ 52.363893,
+ 52.4006568133759,
+ 52.341453,
+ 52.3545448464899,
+ 52.3549105780971,
+ 52.3333118146981,
+ 52.3700479003282,
+ 52.3579747412563,
+ 52.3714185900611,
+ 52.332426,
+ 52.3578952935714,
+ 52.3052759309378,
+ 52.3352390967979,
+ 52.3533287816013,
+ 52.3545938706784,
+ 52.3389789,
+ 52.336339,
+ 52.3557710388443,
+ 52.37133354,
+ 52.3358045267172,
+ 52.401722,
+ 52.3761845581983,
+ 52.357210691928,
+ 52.3704728678235,
+ 52.3762435052799,
+ 52.3612528575306,
+ 52.3375320353285,
+ 52.3653832244084,
+ 52.3142104,
+ 52.3826261860431,
+ 52.402437,
+ 52.362523087804,
+ 52.382749,
+ 52.3399845540409,
+ 52.3621398113363,
+ 52.333801725009,
+ 52.374897,
+ 52.2944386032995,
+ 52.3842761,
+ 52.3657488663193,
+ 52.3805227130876,
+ 52.401708,
+ 52.3754755496354,
+ 52.3793250181387,
+ 52.360949,
+ 52.3577085499967,
+ 52.3742253375528,
+ 52.3727871,
+ 52.3557911065058,
+ 52.3771969,
+ 52.3548896909311,
+ 52.3650847306161,
+ 52.3635697104527,
+ 52.3609924189596,
+ 52.3637926,
+ 52.38093936996,
+ 52.310162,
+ 52.3043624730413,
+ 52.391486,
+ 52.38808,
+ 52.3866061,
+ 52.3484551548406,
+ 52.378758,
+ 52.3648906471507,
+ 52.3614788973101,
+ 52.360993770212,
+ 52.3660603421124,
+ 52.3741996,
+ 52.364136,
+ 52.3922488195172,
+ 52.3743254,
+ 52.3569550152757,
+ 52.3618286015023,
+ 52.362654,
+ 52.3905283,
+ 52.36676,
+ 52.3590874033621,
+ 52.3626582165351,
+ 52.3584051486544,
+ 52.3738200603831,
+ 52.304806261585,
+ 52.365747,
+ 52.3712343600445,
+ 52.3096565954741,
+ 52.3318032874812,
+ 52.3730475260495,
+ 52.361593145237,
+ 52.3545784300335,
+ 52.3542499654985,
+ 52.3375048702365,
+ 52.3628600898999,
+ 52.3785865880488,
+ 52.3679418353713,
+ 52.3763294696329,
+ 52.3788935865371,
+ 52.3466449,
+ 52.3642477907647,
+ 52.3664514799061,
+ 52.387052242092,
+ 52.394036005692,
+ 52.3856494,
+ 52.3578617125481,
+ 52.3522127755719,
+ 52.359005091078,
+ 52.3759119269223,
+ 52.3498912311701,
+ 52.3756892358625,
+ 52.3773253,
+ 52.339954,
+ 52.3856249128608,
+ 52.3874575746578,
+ 52.3648857336342,
+ 52.3692724674063,
+ 52.3590162611425,
+ 52.3592102572324,
+ 52.37282362571,
+ 52.3402687108229,
+ 52.3742711914492,
+ 52.3581028827505,
+ 52.3707029544915,
+ 52.3535724695694,
+ 52.3513157924539,
+ 52.3823596305708,
+ 52.3678574924207,
+ 52.3468297845623,
+ 52.3537109,
+ 52.3576802926766,
+ 52.338489,
+ 52.3766373025148,
+ 52.3597614573926,
+ 52.3723323595859,
+ 52.3554163721413,
+ 52.379748,
+ 52.3544748942031,
+ 52.3921931674547,
+ 52.378642,
+ 52.3258551826725,
+ 52.355843,
+ 52.326535,
+ 52.3755639716479,
+ 52.3527640630135,
+ 52.3841992220711,
+ 52.3678173680479,
+ 52.3776721292375,
+ 52.3627085825928,
+ 52.3682186101361,
+ 52.3266731785754,
+ 52.37226,
+ 52.3664334643127,
+ 52.3310022397142,
+ 52.3636477,
+ 52.3418435228634,
+ 52.3337378043121,
+ 52.357917817414,
+ 52.35813,
+ 52.3599989709438,
+ 52.355375399345,
+ 52.3701379708517,
+ 52.3649577984884,
+ 52.3505248757999,
+ 52.3692891,
+ 52.381116191928,
+ 52.3432309277564,
+ 52.3623732172734,
+ 52.3658921741934,
+ 52.3585869750682,
+ 52.326138,
+ 52.3600415594456,
+ 52.3711983327514,
+ 52.3575427561554,
+ 52.36573564045,
+ 52.365333,
+ 52.3640545225574,
+ 52.3651023703734,
+ 52.3676388550903,
+ 52.3699794423125,
+ 52.364638,
+ 52.3575345009985,
+ 52.374241,
+ 52.3656137470407,
+ 52.362194,
+ 52.3724914,
+ 52.36198338772,
+ 52.3117288441657,
+ 52.372422425451,
+ 52.3992798782431
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "coloraxis": {
+ "colorbar": {
+ "title": {
+ "text": "Price (USD)"
+ }
+ },
+ "colorscale": [
+ [
+ 0,
+ "rgb(3, 35, 51)"
+ ],
+ [
+ 0.09090909090909091,
+ "rgb(13, 48, 100)"
+ ],
+ [
+ 0.18181818181818182,
+ "rgb(53, 50, 155)"
+ ],
+ [
+ 0.2727272727272727,
+ "rgb(93, 62, 153)"
+ ],
+ [
+ 0.36363636363636365,
+ "rgb(126, 77, 143)"
+ ],
+ [
+ 0.45454545454545453,
+ "rgb(158, 89, 135)"
+ ],
+ [
+ 0.5454545454545454,
+ "rgb(193, 100, 121)"
+ ],
+ [
+ 0.6363636363636364,
+ "rgb(225, 113, 97)"
+ ],
+ [
+ 0.7272727272727273,
+ "rgb(246, 139, 69)"
+ ],
+ [
+ 0.8181818181818182,
+ "rgb(251, 173, 60)"
+ ],
+ [
+ 0.9090909090909091,
+ "rgb(246, 211, 70)"
+ ],
+ [
+ 1,
+ "rgb(231, 250, 90)"
+ ]
+ ]
+ },
+ "legend": {
+ "itemsizing": "constant",
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Hotel Locations in Amsterdam Colored by Price"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Longitude"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "scaleanchor": "x",
+ "scaleratio": 1,
+ "title": {
+ "text": "Latitude"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter(\n",
+ " df_hotels,\n",
+ " x=\"longitude\",\n",
+ " y=\"latitude\",\n",
+ " color=\"price\",\n",
+ " size=\"price\",\n",
+ " title=\"Hotel Locations in Amsterdam Colored by Price\",\n",
+ " labels={\"longitude\": \"Longitude\", \"latitude\": \"Latitude\", \"price\": \"Price (USD)\"},\n",
+ " hover_name=\"name\",\n",
+ " color_continuous_scale=\"thermal\"\n",
+ ")\n",
+ "fig.update_yaxes(scaleanchor=\"x\", scaleratio=1) # keep aspect ratio\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 117,
+ "id": "314d7e6d",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "customdata": [
+ [
+ 580.97,
+ 5,
+ 8.4
+ ],
+ [
+ 303.13,
+ 4,
+ 8.9
+ ],
+ [
+ 432.32,
+ 4,
+ 8.1
+ ],
+ [
+ 244.4,
+ 4,
+ 8.4
+ ],
+ [
+ 233.49,
+ 3,
+ 8.2
+ ],
+ [
+ 383.23,
+ 4,
+ 8.5
+ ],
+ [
+ 439,
+ 4,
+ 8.9
+ ],
+ [
+ 359.75,
+ 0,
+ 8
+ ],
+ [
+ 406.07,
+ 4,
+ 8.8
+ ],
+ [
+ 374.75,
+ 3,
+ 7.7
+ ],
+ [
+ 495.09,
+ 0,
+ 8
+ ],
+ [
+ 363.57,
+ 3,
+ 8.2
+ ],
+ [
+ 250.07,
+ 4,
+ 8.5
+ ],
+ [
+ 243.83,
+ 4,
+ 8.7
+ ],
+ [
+ 235.57,
+ 3,
+ 8.1
+ ],
+ [
+ 489.82,
+ 4,
+ 8.6
+ ],
+ [
+ 291.52,
+ 4,
+ 8.2
+ ],
+ [
+ 283.23,
+ 4,
+ 8.5
+ ],
+ [
+ 318.95,
+ 4,
+ 8.3
+ ],
+ [
+ 210.65,
+ 3,
+ 7.9
+ ],
+ [
+ 466.54,
+ 2,
+ 7.2
+ ],
+ [
+ 517.74,
+ 3,
+ 8.3
+ ],
+ [
+ 369.27,
+ 4,
+ 8.7
+ ],
+ [
+ 402.02,
+ 4,
+ 8.6
+ ],
+ [
+ 385.54,
+ 4,
+ 9.1
+ ],
+ [
+ 286.66,
+ 4,
+ 8.6
+ ],
+ [
+ 201.77,
+ 3,
+ 8.1
+ ],
+ [
+ 180.16,
+ 3,
+ 8.1
+ ],
+ [
+ 231.36,
+ 4,
+ 8.5
+ ],
+ [
+ 241.1,
+ 0,
+ 8
+ ],
+ [
+ 225.43,
+ 4,
+ 8.4
+ ],
+ [
+ 201.28,
+ 4,
+ 8.7
+ ],
+ [
+ 451.23,
+ 4,
+ 8.5
+ ],
+ [
+ 321.46,
+ 4,
+ 8.5
+ ],
+ [
+ 261.53,
+ 4,
+ 8.6
+ ],
+ [
+ 403.53,
+ 4,
+ 8.5
+ ],
+ [
+ 195.42,
+ 3,
+ 7.7
+ ],
+ [
+ 227.27,
+ 4,
+ 8.8
+ ],
+ [
+ 350.11,
+ 3,
+ 7.9
+ ],
+ [
+ 392.11,
+ 3,
+ 8.2
+ ],
+ [
+ 404.7,
+ 3,
+ 8.2
+ ],
+ [
+ 263.95,
+ 4,
+ 8.6
+ ],
+ [
+ 392.11,
+ 3,
+ 8
+ ],
+ [
+ 198.56,
+ 3,
+ 7.8
+ ],
+ [
+ 219.53,
+ 4,
+ 8.3
+ ],
+ [
+ 522.03,
+ 5,
+ 8.5
+ ],
+ [
+ 244.85,
+ 4,
+ 8.6
+ ],
+ [
+ 280.44,
+ 3,
+ 8.6
+ ],
+ [
+ 274.1,
+ 4,
+ 8.7
+ ],
+ [
+ 373.43,
+ 4,
+ 8.8
+ ],
+ [
+ 383.05,
+ 4,
+ 8.4
+ ],
+ [
+ 238.57,
+ 4,
+ 8.7
+ ],
+ [
+ 369,
+ 4,
+ 8.6
+ ],
+ [
+ 353.11,
+ 4,
+ 8.2
+ ],
+ [
+ 528.87,
+ 3,
+ 8.4
+ ],
+ [
+ 561.05,
+ 4,
+ 9.2
+ ],
+ [
+ 602.76,
+ 4,
+ 8.7
+ ],
+ [
+ 450.48,
+ 4,
+ 8.1
+ ],
+ [
+ 330.69,
+ 4,
+ 9.1
+ ],
+ [
+ 602.76,
+ 4,
+ 8.8
+ ],
+ [
+ 300,
+ 4,
+ 8.7
+ ],
+ [
+ 1195.5,
+ 2,
+ 6.3
+ ],
+ [
+ 318.59,
+ 4,
+ 9
+ ],
+ [
+ 358.72,
+ 4,
+ 8.7
+ ],
+ [
+ 1820.46,
+ 3,
+ 6.7
+ ],
+ [
+ 318.61,
+ 4,
+ 8.9
+ ],
+ [
+ 332.47,
+ 4,
+ 8
+ ],
+ [
+ 233.39,
+ 4,
+ 8.5
+ ],
+ [
+ 571.04,
+ 1,
+ 8.1
+ ],
+ [
+ 214.46,
+ 4,
+ 7.6
+ ],
+ [
+ 399.84,
+ 4,
+ 8.6
+ ],
+ [
+ 421.04,
+ 4,
+ 8
+ ],
+ [
+ 336.97,
+ 4,
+ 8.5
+ ],
+ [
+ 279.36,
+ 4,
+ 8.2
+ ],
+ [
+ 457.29,
+ 3,
+ 8
+ ],
+ [
+ 194.38,
+ 4,
+ 8.2
+ ],
+ [
+ 444.14,
+ 4,
+ 8.9
+ ],
+ [
+ 262.04,
+ 3,
+ 7.5
+ ],
+ [
+ 348.14,
+ 3,
+ 7.9
+ ],
+ [
+ 748.06,
+ 5,
+ 7.6
+ ],
+ [
+ 235.08,
+ 0,
+ 8.2
+ ],
+ [
+ 520.28,
+ 5,
+ 8.8
+ ],
+ [
+ 380.69,
+ 2,
+ 7.2
+ ],
+ [
+ 493.37,
+ 4,
+ 8.7
+ ],
+ [
+ 913.66,
+ 2,
+ 7.7
+ ],
+ [
+ 475.3,
+ 4,
+ 8.3
+ ],
+ [
+ 610.4,
+ 5,
+ 8.4
+ ],
+ [
+ 419.52,
+ 3,
+ 8.7
+ ],
+ [
+ 181.21,
+ 4,
+ 8.5
+ ],
+ [
+ 201.28,
+ 3,
+ 8.3
+ ],
+ [
+ 241.21,
+ 4,
+ 8.3
+ ],
+ [
+ 206.6,
+ 3,
+ 8.4
+ ],
+ [
+ 345.98,
+ 4,
+ 8.5
+ ],
+ [
+ 398.01,
+ 5,
+ 8.9
+ ],
+ [
+ 514.33,
+ 3,
+ 8.3
+ ],
+ [
+ 267.75,
+ 3,
+ 8.6
+ ],
+ [
+ 338.17,
+ 2,
+ 7
+ ],
+ [
+ 406.07,
+ 3,
+ 7.9
+ ],
+ [
+ 414.05,
+ 4,
+ 7.7
+ ],
+ [
+ 558.47,
+ 3,
+ 8.2
+ ],
+ [
+ 340.41,
+ 3,
+ 8.2
+ ],
+ [
+ 212.49,
+ 3,
+ 8
+ ],
+ [
+ 501.52,
+ 4,
+ 9.1
+ ],
+ [
+ 241.26,
+ 3,
+ 7.9
+ ],
+ [
+ 720.87,
+ 3,
+ 7.6
+ ],
+ [
+ 1123.8,
+ 4,
+ 8.9
+ ],
+ [
+ 370.35,
+ 0,
+ 7.7
+ ],
+ [
+ 410.12,
+ 4,
+ 8
+ ],
+ [
+ 359.98,
+ 4,
+ 8.4
+ ],
+ [
+ 558.47,
+ 5,
+ 7.9
+ ],
+ [
+ 358.61,
+ 4,
+ 8.7
+ ],
+ [
+ 262.68,
+ 2,
+ 7.4
+ ],
+ [
+ 199.86,
+ 4,
+ 7.4
+ ],
+ [
+ 358.72,
+ 3,
+ 8.6
+ ],
+ [
+ 455.56,
+ 3,
+ 8.3
+ ],
+ [
+ 215.72,
+ 4,
+ 8.1
+ ],
+ [
+ 284.38,
+ 4,
+ 9
+ ],
+ [
+ 267.24,
+ 0,
+ 8.6
+ ],
+ [
+ 417.49,
+ 4,
+ 8.4
+ ],
+ [
+ 497.44,
+ 4,
+ 8.7
+ ],
+ [
+ 430.18,
+ 4,
+ 8.6
+ ],
+ [
+ 217.96,
+ 4,
+ 7.5
+ ],
+ [
+ 316.35,
+ 3,
+ 7.6
+ ],
+ [
+ 182.87,
+ 3,
+ 7.9
+ ],
+ [
+ 257.6,
+ 4,
+ 8.3
+ ],
+ [
+ 571.04,
+ 1,
+ 7.3
+ ],
+ [
+ 525.35,
+ 3,
+ 8
+ ],
+ [
+ 222.32,
+ 4,
+ 8.3
+ ],
+ [
+ 348.45,
+ 3,
+ 6.3
+ ],
+ [
+ 350.02,
+ 4,
+ 8
+ ],
+ [
+ 239.49,
+ 3,
+ 8.7
+ ],
+ [
+ 284.15,
+ 4,
+ 9.3
+ ],
+ [
+ 235.27,
+ 4,
+ 8.4
+ ],
+ [
+ 500.91,
+ 3,
+ 8.5
+ ],
+ [
+ 235.5,
+ 2,
+ 7.6
+ ],
+ [
+ 683.41,
+ 3,
+ 8.6
+ ],
+ [
+ 271.24,
+ 2,
+ 7.6
+ ],
+ [
+ 245.55,
+ 3,
+ 8.9
+ ],
+ [
+ 347.19,
+ 3,
+ 7.2
+ ],
+ [
+ 929.3,
+ 0,
+ 9.4
+ ],
+ [
+ 211.28,
+ 0,
+ 8.4
+ ],
+ [
+ 201.28,
+ 4,
+ 8.5
+ ],
+ [
+ 374.6,
+ 3,
+ 8.9
+ ],
+ [
+ 347.76,
+ 2,
+ 8
+ ],
+ [
+ 399.72,
+ 2,
+ 7.5
+ ],
+ [
+ 329.93,
+ 0,
+ 8.2
+ ],
+ [
+ 345.2,
+ 3,
+ 8.7
+ ],
+ [
+ 893.35,
+ 5,
+ 8.9
+ ],
+ [
+ 223.11,
+ 3,
+ 7.9
+ ],
+ [
+ 266.48,
+ 1,
+ 7.6
+ ],
+ [
+ 517.57,
+ 0,
+ 8.9
+ ],
+ [
+ 700.47,
+ 3,
+ 6.9
+ ],
+ [
+ 283.14,
+ 3,
+ 7.7
+ ],
+ [
+ 312.42,
+ 5,
+ 7.9
+ ],
+ [
+ 325.49,
+ 0,
+ 8.6
+ ],
+ [
+ 795.76,
+ 5,
+ 8.8
+ ],
+ [
+ 197.25,
+ 3,
+ 7.4
+ ],
+ [
+ 201,
+ 0,
+ 8.7
+ ],
+ [
+ 1027.86,
+ 3,
+ 6
+ ],
+ [
+ 292.41,
+ 4,
+ 9
+ ],
+ [
+ 361.66,
+ 3,
+ 7.5
+ ],
+ [
+ 465.96,
+ 4,
+ 8.9
+ ],
+ [
+ 391.79,
+ 0,
+ 7.9
+ ],
+ [
+ 483.44,
+ 4,
+ 8.7
+ ],
+ [
+ 388.19,
+ 3,
+ 7.6
+ ],
+ [
+ 231.28,
+ 4,
+ 8.2
+ ],
+ [
+ 222.92,
+ 4,
+ 8.6
+ ],
+ [
+ 512.79,
+ 3,
+ 7.8
+ ],
+ [
+ 257.6,
+ 3,
+ 8
+ ],
+ [
+ 464.44,
+ 3,
+ 8.8
+ ],
+ [
+ 235.61,
+ 0,
+ 9
+ ],
+ [
+ 507.59,
+ 4,
+ 8.8
+ ],
+ [
+ 516.72,
+ 5,
+ 8.5
+ ],
+ [
+ 268.58,
+ 3,
+ 8
+ ],
+ [
+ 428.92,
+ 3,
+ 8.3
+ ],
+ [
+ 593.88,
+ 4,
+ 8.7
+ ],
+ [
+ 621.79,
+ 1,
+ 7.5
+ ],
+ [
+ 616.08,
+ 5,
+ 8.8
+ ],
+ [
+ 205.77,
+ 4,
+ 8.2
+ ],
+ [
+ 266.42,
+ 4,
+ 8.5
+ ],
+ [
+ 263.65,
+ 3,
+ 7.7
+ ],
+ [
+ 324.18,
+ 3,
+ 7.9
+ ],
+ [
+ 418.65,
+ 0,
+ 7.8
+ ],
+ [
+ 318.51,
+ 4,
+ 8.6
+ ],
+ [
+ 182.21,
+ 3,
+ 7.2
+ ],
+ [
+ 212.43,
+ 2,
+ 6.5
+ ],
+ [
+ 303.64,
+ 0,
+ 7.4
+ ],
+ [
+ 390.84,
+ 3,
+ 7.9
+ ],
+ [
+ 265.21,
+ 3,
+ 7.8
+ ],
+ [
+ 460.14,
+ 4,
+ 8.4
+ ],
+ [
+ 414.91,
+ 2,
+ 8.3
+ ],
+ [
+ 364.47,
+ 4,
+ 8.7
+ ],
+ [
+ 241.1,
+ 0,
+ 8.9
+ ],
+ [
+ 178.27,
+ 3,
+ 7.8
+ ],
+ [
+ 254.91,
+ 4,
+ 9.1
+ ],
+ [
+ 177.52,
+ 3,
+ 6
+ ],
+ [
+ 403.14,
+ 4,
+ 7.6
+ ],
+ [
+ 1081.16,
+ 5,
+ 9.1
+ ],
+ [
+ 260.11,
+ 4,
+ 8.4
+ ],
+ [
+ 873.05,
+ 5,
+ 8.6
+ ],
+ [
+ 842.59,
+ 5,
+ 9
+ ],
+ [
+ 213.69,
+ 3,
+ 7.2
+ ],
+ [
+ 1332.42,
+ 5,
+ 8.7
+ ],
+ [
+ 981.15,
+ 0,
+ 9.7
+ ],
+ [
+ 875.59,
+ 3,
+ 6.5
+ ],
+ [
+ 346.57,
+ 2,
+ 7.9
+ ],
+ [
+ 913.66,
+ 5,
+ 9.2
+ ],
+ [
+ 407.34,
+ 3,
+ 8.7
+ ],
+ [
+ 1532.06,
+ 5,
+ 9.5
+ ],
+ [
+ 227.15,
+ 3,
+ 6.9
+ ],
+ [
+ 355.31,
+ 4,
+ 8.6
+ ],
+ [
+ 408.06,
+ 2,
+ 6.9
+ ],
+ [
+ 747.42,
+ 5,
+ 9.4
+ ],
+ [
+ 1713.11,
+ 5,
+ 9.6
+ ],
+ [
+ 363.34,
+ 3,
+ 7.9
+ ],
+ [
+ 184.02,
+ 3,
+ 7.7
+ ],
+ [
+ 348.97,
+ 3,
+ 6.9
+ ],
+ [
+ 1407.03,
+ 5,
+ 9.7
+ ]
+ ],
+ "hovertemplate": "%{hovertext}
price=%{marker.color}
latitude=%{lat}
longitude=%{lon}
stars=%{customdata[1]}
review_score=%{customdata[2]}",
+ "hovertext": [
+ "Hyatt Regency Amsterdam",
+ "Chasse Residency Hotel",
+ "Swissôtel Amsterdam",
+ "Holiday Inn - the niu, Fender Amsterdam",
+ "Holiday Inn Express Amsterdam - North Riverside by IHG",
+ "Mövenpick Hotel Amsterdam City Centre",
+ "Hotel V Oosterpark",
+ "Hans Brinker Hostel Amsterdam",
+ "Citadines Canal Amsterdam",
+ "ibis Amsterdam Centre",
+ "Renaissance Amsterdam Hotel",
+ "Hotel Van Gogh",
+ "Mercure Amsterdam Sloterdijk Station",
+ "Ruby Emma Hotel Amsterdam",
+ "Hampton By Hilton Amsterdam Arena Boulevard",
+ "Park Plaza Victoria Amsterdam",
+ "Inntel Hotels Amsterdam Landmark",
+ "Apollo Hotel Amsterdam, a Tribute Portfolio Hotel",
+ "DoubleTree by Hilton Amsterdam Centraal Station",
+ "Holiday Inn Express Amsterdam Arena Towers by IHG",
+ "ITC Hotel",
+ "Holiday Inn Express Amsterdam - City Hall by IHG",
+ "Sir Adam Hotel, part of Sircle Collection",
+ "Bob W Amsterdam Noord",
+ "Monet Garden Hotel Amsterdam",
+ "Bob W Oosterpark",
+ "Holiday Inn Express Amsterdam - Sloterdijk Station by IHG",
+ "Via Amsterdam",
+ "Postillion Hotel Amsterdam",
+ "Hotel Hortus",
+ "Park Inn by Radisson Amsterdam City West",
+ "XO Hotels Couture",
+ "Clayton Hotel Amsterdam American",
+ "DoubleTree by Hilton Amsterdam - NDSM Wharf",
+ "Olympic Hotel",
+ "Sir Albert Hotel, part of Sircle Collection",
+ "The Concert Hotel",
+ "Van der Valk Hotel Amsterdam - Amstel",
+ "ibis Amsterdam Centre Stopera",
+ "ibis Styles Amsterdam City",
+ "Stanley Collection Hotel Hegra Amsterdam",
+ "Leonardo Royal Hotel Amsterdam",
+ "ibis Styles Amsterdam Amstel",
+ "Joy Hotel",
+ "Mercure Amsterdam City Hotel",
+ "Pestana Amsterdam Riverside",
+ "The Social Hub Amsterdam City",
+ "Motel One Amsterdam",
+ "Van der Valk Hotel Amsterdam Zuidas -Rai",
+ "Avani Museum Quarter Amsterdam Hotel",
+ "Hampton by Hilton Amsterdam Centre East",
+ "Crowne Plaza Amsterdam - South by IHG",
+ "Residence Inn by Marriott Amsterdam Houthavens",
+ "Inntel Hotels Amsterdam Centre",
+ "Conscious Hotel The Tire Station",
+ "Hotel Estheréa",
+ "Canal House",
+ "Leonardo Boutique Museumhotel",
+ "PREMIER SUITES Amsterdam",
+ "Banks Mansion - All Inclusive Boutique Hotel",
+ "Jaz in the City Amsterdam",
+ "Camp-Inn Hotel",
+ "Mercure Amsterdam North Station",
+ "Huygens Place Amsterdam",
+ "Triple G Hotels",
+ "INNSiDE by Meliá Amsterdam",
+ "Leonardo Hotel Amsterdam City Center",
+ "Novotel Amsterdam City",
+ "The Crown Hotel",
+ "Fletcher Hotel Amsterdam",
+ "Room Mate Aitana, Amsterdam",
+ "NH Amsterdam Schiller",
+ "Adam Suites Hotel",
+ "Moxy Amsterdam Houthavens",
+ "The Times Hotel",
+ "XO Hotels Blue Tower",
+ "citizenM Amstel Amsterdam",
+ "Hotel Atlas Vondelpark",
+ "Hotel Fine Harmony",
+ "W Amsterdam",
+ "De Bedstee Boutique Capsules",
+ "Kimpton De Witt Amsterdam by IHG",
+ "Hotel Washington",
+ "Dikker & Thijs Hotel",
+ "Mozart Hotel",
+ "Hotel Arena",
+ "The Diamond Amsterdam",
+ "The Bank Hotel",
+ "Courtyard by Marriott Amsterdam Arena Atlas",
+ "Hotel Levell",
+ "YOTEL Amsterdam",
+ "Bunk Hotel Amsterdam",
+ "Conscious Hotel Westerpark",
+ "Hotel Okura Amsterdam – The Leading Hotels of the World",
+ "Hotel New Kit",
+ "Boutique Hotel View",
+ "Quentin England Hotel",
+ "Generator Amsterdam",
+ "De Jonker Urban Suites",
+ "Hotel Mansion",
+ "Leonardo Hotel Amsterdam Leidse Square",
+ "ibis Amsterdam City West",
+ "Morgan & Mees Amsterdam",
+ "XO Hotel Inner",
+ "Hotel Allure",
+ "Met Hotel Amsterdam",
+ "Limehome Amsterdam Gatwickstraat",
+ "Quentin Zoo hotel",
+ "The Manor Amsterdam",
+ "Amsterdam Marriott Hotel",
+ "Boutique Hotel Notting Hill",
+ "Nadia Hotel",
+ "OZO Hotels Arena Amsterdam",
+ "Krisotel",
+ "Nova Hotel",
+ "Holiday Inn Amsterdam - Arena Towers by IHG",
+ "Element Amsterdam",
+ "Pension Homeland",
+ "Park Centraal Amsterdam, part of Sircle Collection",
+ "Nova Apartments Amsterdam",
+ "Park Plaza Vondelpark Amsterdam",
+ "Mercure Hotel Amsterdam West",
+ "Hotel Espresso",
+ "XO Hotels Blue Square",
+ "Leonardo Hotel Amsterdam Rembrandtpark",
+ "The Old Nickel Hotel",
+ "Max Brown Hotel Canal District, part of Sircle Collection",
+ "Corendon Amsterdam New-West, a Tribute Portfolio Hotel",
+ "Quentin Amsterdam Hotel",
+ "NH Amsterdam Caransa",
+ "Hotel2Stay",
+ "The July - Boat & Co",
+ "Urban Lodge Hotel",
+ "Conscious Hotel Vondelpark",
+ "easyHotel Amsterdam City Centre South",
+ "The IF Boutique hotel",
+ "Hotel Old Quarter",
+ "Hotel Casa Amsterdam",
+ "Delta Hotel City Center",
+ "Studio Koggeschip",
+ "Hotel Jansen Amsterdam Bajeskwartier",
+ "XO Hotels Park West",
+ "Amsterdam ID Aparthotel",
+ "Weber Hotel",
+ "Hotel Pagi",
+ "Golden Mansion Aparthotel",
+ "Hotel Fita",
+ "Pulitzer Amsterdam",
+ "Qbic Amsterdam WTC",
+ "Hotel Corner House",
+ "Amsterdam-Houseboat-Amstel",
+ "OZO Hotels Cordial Amsterdam",
+ "The Alfred Hotel",
+ "Bilderberg Garden Hotel",
+ "hotel calisto",
+ "Andaz Amsterdam, Prinsengracht, By Hyatt",
+ "Hotel Victorie",
+ "Volkshotel",
+ "Belfort Hotel",
+ "nhow Amsterdam Rai",
+ "Avenue Hotel",
+ "Jan Luyken Amsterdam",
+ "Heart of Amsterdam Hostel",
+ "Conscious Hotel Museum Square",
+ "Cityview Hotel",
+ "Four Elements Hotel",
+ "NH Amsterdam Noord",
+ "Ciao Papa Hotel Amsterdam Central Station",
+ "Holiday Inn Express Amsterdam - South by IHG",
+ "Hotel Omega",
+ "Outside Inn",
+ "INK Hotel Amsterdam - MGallery Collection",
+ "The College Hotel Amsterdam, Autograph Collection",
+ "ClinkNOORD Hostel",
+ "Hotel Residence Le Coin",
+ "art'otel amsterdam, Powered by Radisson Hotels",
+ "Hotel Abba",
+ "Tivoli Doelen Amsterdam Hotel",
+ "NH Amsterdam Zuid",
+ "The Social Hub Amsterdam West 4 star",
+ "Hotel Park Plantage",
+ "Hotel & Wellness Zuiver",
+ "Limehome Amsterdam Leidsekruisstraat",
+ "citizenM Amsterdam South",
+ "Bastion Hotel Amsterdam Amstel",
+ "MAX Hotel Amsterdam",
+ "City Rooms Amsterdam Hemonystraat - Digital access",
+ "Max Brown Hotel Museum Square, part of Sircle Collection",
+ "Hotel Fogo Amsterdam",
+ "Radisson Blu Hotel, Amsterdam City Center",
+ "Weber Hotel 397",
+ "The Delphi - Amsterdam Townhouse",
+ "Skotel Amsterdam, Hotelschool The Hague",
+ "XO Hotels Infinity",
+ "The July - Twenty Eight",
+ "Westlake Hotels Amsterdam",
+ "Leonardo Boutique Hotel The Lancaster Hotel Amsterdam",
+ "Conservatorium Hotel - Operated by Mandarin Oriental",
+ "Via Suites",
+ "InterContinental Amstel Amsterdam by IHG",
+ "Sofitel Legend The Grand Amsterdam",
+ "Q-Factory Hotel",
+ "Rosewood Amsterdam",
+ "Leidse Square 5 star Luxury Apartment",
+ "OZO Hotels Armada Amsterdam",
+ "Weber Hotel 117",
+ "De L’Europe Amsterdam – The Leading Hotels of the World",
+ "Motel One Amsterdam-Waterlooplein",
+ "Waldorf Astoria Amsterdam",
+ "Bastion Hotel Amsterdam Zuidwest",
+ "The Hoxton Lloyd Amsterdam City Centre East",
+ "Quentin Golden Bear Hotel",
+ "Pillows Grand Boutique Hotel Maurits at the Park - Small Luxury Hotels",
+ "Hotel TwentySeven - Small Luxury Hotels of the World",
+ "Prinsengracht Hotel",
+ "Campanile Hotel & Restaurant Amsterdam Zuid-Oost",
+ "Hotel Doria",
+ "Crane Hotel Faralda"
+ ],
+ "lat": [
+ 52.361798,
+ 52.351902,
+ 52.3735015639879,
+ 52.3689672,
+ 52.3841044464671,
+ 52.3778244039078,
+ 52.3618697208272,
+ 52.3636789,
+ 52.361026,
+ 52.3795419603305,
+ 52.3777675899871,
+ 52.3590558708137,
+ 52.387911,
+ 52.338347,
+ 52.3130603489422,
+ 52.3773479298031,
+ 52.3734396516721,
+ 52.3485731229379,
+ 52.3767126229996,
+ 52.3095778808935,
+ 52.3622245746876,
+ 52.370508,
+ 52.3837837705751,
+ 52.3965941042896,
+ 52.3697879175963,
+ 52.3549487,
+ 52.3882024042909,
+ 52.326207,
+ 52.3336117162739,
+ 52.3667708460243,
+ 52.390137,
+ 52.3511038699022,
+ 52.363893,
+ 52.4006568133759,
+ 52.341453,
+ 52.3545448464899,
+ 52.3549105780971,
+ 52.3333118146981,
+ 52.3700479003282,
+ 52.3579747412563,
+ 52.3714185900611,
+ 52.332426,
+ 52.3578952935714,
+ 52.3052759309378,
+ 52.3352390967979,
+ 52.3533287816013,
+ 52.3545938706784,
+ 52.3389789,
+ 52.336339,
+ 52.3557710388443,
+ 52.37133354,
+ 52.3358045267172,
+ 52.401722,
+ 52.3761845581983,
+ 52.357210691928,
+ 52.3704728678235,
+ 52.3762435052799,
+ 52.3612528575306,
+ 52.3375320353285,
+ 52.3653832244084,
+ 52.3142104,
+ 52.3826261860431,
+ 52.402437,
+ 52.362523087804,
+ 52.382749,
+ 52.3399845540409,
+ 52.3621398113363,
+ 52.333801725009,
+ 52.374897,
+ 52.2944386032995,
+ 52.3842761,
+ 52.3657488663193,
+ 52.3805227130876,
+ 52.401708,
+ 52.3754755496354,
+ 52.3793250181387,
+ 52.360949,
+ 52.3577085499967,
+ 52.3742253375528,
+ 52.3727871,
+ 52.3557911065058,
+ 52.3771969,
+ 52.3548896909311,
+ 52.3650847306161,
+ 52.3635697104527,
+ 52.3609924189596,
+ 52.3637926,
+ 52.38093936996,
+ 52.310162,
+ 52.3043624730413,
+ 52.391486,
+ 52.38808,
+ 52.3866061,
+ 52.3484551548406,
+ 52.378758,
+ 52.3648906471507,
+ 52.3614788973101,
+ 52.360993770212,
+ 52.3660603421124,
+ 52.3741996,
+ 52.364136,
+ 52.3922488195172,
+ 52.3743254,
+ 52.3569550152757,
+ 52.3618286015023,
+ 52.362654,
+ 52.3905283,
+ 52.36676,
+ 52.3590874033621,
+ 52.3626582165351,
+ 52.3584051486544,
+ 52.3738200603831,
+ 52.304806261585,
+ 52.365747,
+ 52.3712343600445,
+ 52.3096565954741,
+ 52.3318032874812,
+ 52.3730475260495,
+ 52.361593145237,
+ 52.3545784300335,
+ 52.3542499654985,
+ 52.3375048702365,
+ 52.3628600898999,
+ 52.3785865880488,
+ 52.3679418353713,
+ 52.3763294696329,
+ 52.3788935865371,
+ 52.3466449,
+ 52.3642477907647,
+ 52.3664514799061,
+ 52.387052242092,
+ 52.394036005692,
+ 52.3856494,
+ 52.3578617125481,
+ 52.3522127755719,
+ 52.359005091078,
+ 52.3759119269223,
+ 52.3498912311701,
+ 52.3756892358625,
+ 52.3773253,
+ 52.339954,
+ 52.3856249128608,
+ 52.3874575746578,
+ 52.3648857336342,
+ 52.3692724674063,
+ 52.3590162611425,
+ 52.3592102572324,
+ 52.37282362571,
+ 52.3402687108229,
+ 52.3742711914492,
+ 52.3581028827505,
+ 52.3707029544915,
+ 52.3535724695694,
+ 52.3513157924539,
+ 52.3823596305708,
+ 52.3678574924207,
+ 52.3468297845623,
+ 52.3537109,
+ 52.3576802926766,
+ 52.338489,
+ 52.3766373025148,
+ 52.3597614573926,
+ 52.3723323595859,
+ 52.3554163721413,
+ 52.379748,
+ 52.3544748942031,
+ 52.3921931674547,
+ 52.378642,
+ 52.3258551826725,
+ 52.355843,
+ 52.326535,
+ 52.3755639716479,
+ 52.3527640630135,
+ 52.3841992220711,
+ 52.3678173680479,
+ 52.3776721292375,
+ 52.3627085825928,
+ 52.3682186101361,
+ 52.3266731785754,
+ 52.37226,
+ 52.3664334643127,
+ 52.3310022397142,
+ 52.3636477,
+ 52.3418435228634,
+ 52.3337378043121,
+ 52.357917817414,
+ 52.35813,
+ 52.3599989709438,
+ 52.355375399345,
+ 52.3701379708517,
+ 52.3649577984884,
+ 52.3505248757999,
+ 52.3692891,
+ 52.381116191928,
+ 52.3432309277564,
+ 52.3623732172734,
+ 52.3658921741934,
+ 52.3585869750682,
+ 52.326138,
+ 52.3600415594456,
+ 52.3711983327514,
+ 52.3575427561554,
+ 52.36573564045,
+ 52.365333,
+ 52.3640545225574,
+ 52.3651023703734,
+ 52.3676388550903,
+ 52.3699794423125,
+ 52.364638,
+ 52.3575345009985,
+ 52.374241,
+ 52.3656137470407,
+ 52.362194,
+ 52.3724914,
+ 52.36198338772,
+ 52.3117288441657,
+ 52.372422425451,
+ 52.3992798782431
+ ],
+ "legendgroup": "",
+ "lon": [
+ 4.911744,
+ 4.924964,
+ 4.89331215620041,
+ 4.9463418,
+ 4.91952350926207,
+ 4.91414219141006,
+ 4.92270692381791,
+ 4.88805460000003,
+ 4.893588,
+ 4.89696532487869,
+ 4.89438101649284,
+ 4.88014921545982,
+ 4.834296,
+ 4.92086,
+ 4.94809359312057,
+ 4.89777535200119,
+ 4.92843508863831,
+ 4.88510727882385,
+ 4.90566909313202,
+ 4.94186959259036,
+ 4.89858202636242,
+ 4.90835,
+ 4.90240858888546,
+ 4.90684051779097,
+ 4.90726228255619,
+ 4.9285033,
+ 4.83745515346527,
+ 4.953709,
+ 4.92219427514647,
+ 4.90905001759529,
+ 4.842565,
+ 4.84125409510648,
+ 4.881296,
+ 4.89350185850526,
+ 4.853175,
+ 4.88731205463409,
+ 4.87704757601023,
+ 4.91446652778632,
+ 4.90765661001205,
+ 4.90066040307283,
+ 4.88726913928986,
+ 4.917847,
+ 4.90029025822878,
+ 4.95023131370544,
+ 4.9135098606348,
+ 4.90716399999997,
+ 4.91263214907383,
+ 4.89257459999999,
+ 4.887724,
+ 4.88620162010193,
+ 4.934809346,
+ 4.87454742193222,
+ 4.874767,
+ 4.89444941282272,
+ 4.85544981739667,
+ 4.88849088549614,
+ 4.88632701337337,
+ 4.88415978848934,
+ 4.86796079629515,
+ 4.89309288561344,
+ 4.93931620000001,
+ 4.85761788032187,
+ 4.931234,
+ 4.87563338130713,
+ 4.85784,
+ 4.87108765145111,
+ 4.87834140658379,
+ 4.88854050636292,
+ 4.89999,
+ 4.94534432888031,
+ 4.89465280000002,
+ 4.8966957628727,
+ 4.8869948329575,
+ 4.874811,
+ 4.88894149661064,
+ 4.84565332531929,
+ 4.905943,
+ 4.87398952245712,
+ 4.90481983743439,
+ 4.89000590000001,
+ 4.87775735557079,
+ 4.8955395,
+ 4.88353483378887,
+ 4.88395091146231,
+ 4.88622978329659,
+ 4.91579040884972,
+ 4.8833159,
+ 4.89037379622459,
+ 4.94645200000002,
+ 4.95098888346706,
+ 4.903551,
+ 4.91425,
+ 4.87529649999999,
+ 4.89281058311462,
+ 4.837766,
+ 4.87977102398872,
+ 4.87710893154144,
+ 4.91903621904908,
+ 4.91230891408611,
+ 4.90487689999998,
+ 4.878342,
+ 4.8501044511795,
+ 4.87461831349185,
+ 4.87741805613041,
+ 4.91056948900223,
+ 4.835317,
+ 4.841889,
+ 4.911423,
+ 4.92611087858677,
+ 4.87966239452362,
+ 4.89892099052668,
+ 4.88560751080513,
+ 4.94765461349175,
+ 4.879751,
+ 4.89013105630875,
+ 4.94188032142642,
+ 4.87750001904908,
+ 4.91685894973762,
+ 4.88302554935217,
+ 4.87975794821978,
+ 4.86642569303513,
+ 4.81692954897881,
+ 4.87637232989073,
+ 4.82055857777596,
+ 4.84405875205994,
+ 4.89954560995102,
+ 4.89205554127693,
+ 4.83109839999997,
+ 4.87990915775299,
+ 4.89692106842995,
+ 4.8394093674591,
+ 4.88258942460629,
+ 4.83444299999996,
+ 4.85650956630707,
+ 4.89166025072336,
+ 4.90271598100662,
+ 4.89886298775673,
+ 4.91888970136643,
+ 4.89610970020294,
+ 4.89305579999996,
+ 4.924154,
+ 4.84716810286045,
+ 4.83446717262268,
+ 4.88023370504379,
+ 4.89186644554138,
+ 4.89794578650822,
+ 4.87968116998672,
+ 4.88328203558922,
+ 4.87348794937134,
+ 4.89150166511536,
+ 4.89719734750327,
+ 4.89241696894169,
+ 4.87214963988117,
+ 4.87409010529518,
+ 4.8874618914017,
+ 4.88283142447472,
+ 4.90290641784668,
+ 4.91191600000002,
+ 4.85044240951538,
+ 4.891107,
+ 4.89465594291687,
+ 4.88107189536095,
+ 4.89758223295212,
+ 4.87812280654907,
+ 4.892712,
+ 5.00559633862306,
+ 4.91089671850204,
+ 4.895241,
+ 4.8670694231987,
+ 4.875724,
+ 4.931027,
+ 4.89289775490761,
+ 4.88361194729805,
+ 4.90390362334097,
+ 4.89441722631454,
+ 4.89721544086933,
+ 4.87461045384407,
+ 4.89572614431381,
+ 4.87995475530624,
+ 4.8364,
+ 4.91136878728867,
+ 4.85347867012024,
+ 4.8853753,
+ 4.87593680620193,
+ 4.92792874574661,
+ 4.9021178483963,
+ 4.902205,
+ 4.88204687833786,
+ 4.772438482658,
+ 4.89670112729073,
+ 4.88048851490021,
+ 4.87697213888168,
+ 4.8438768,
+ 4.8208911716938,
+ 4.85753103547779,
+ 4.79466319084167,
+ 4.91293653845787,
+ 4.87848825752735,
+ 4.953825,
+ 4.90546524524689,
+ 4.8954002559185,
+ 4.93057484418023,
+ 4.88310919170289,
+ 4.8819123,
+ 4.89844556897879,
+ 4.8803501018524,
+ 4.89420533180237,
+ 4.90738492868036,
+ 4.89644229999999,
+ 4.84374225139618,
+ 4.93466,
+ 4.88519445061684,
+ 4.919684,
+ 4.89332549999995,
+ 4.89448126405478,
+ 4.98621582984924,
+ 4.89441740508482,
+ 4.89473192953028
+ ],
+ "marker": {
+ "color": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "coloraxis": "coloraxis",
+ "size": [
+ 580.97,
+ 303.13,
+ 432.32,
+ 244.4,
+ 233.49,
+ 383.23,
+ 439,
+ 359.75,
+ 406.07,
+ 374.75,
+ 495.09,
+ 363.57,
+ 250.07,
+ 243.83,
+ 235.57,
+ 489.82,
+ 291.52,
+ 283.23,
+ 318.95,
+ 210.65,
+ 466.54,
+ 517.74,
+ 369.27,
+ 402.02,
+ 385.54,
+ 286.66,
+ 201.77,
+ 180.16,
+ 231.36,
+ 241.1,
+ 225.43,
+ 201.28,
+ 451.23,
+ 321.46,
+ 261.53,
+ 403.53,
+ 195.42,
+ 227.27,
+ 350.11,
+ 392.11,
+ 404.7,
+ 263.95,
+ 392.11,
+ 198.56,
+ 219.53,
+ 522.03,
+ 244.85,
+ 280.44,
+ 274.1,
+ 373.43,
+ 383.05,
+ 238.57,
+ 369,
+ 353.11,
+ 528.87,
+ 561.05,
+ 602.76,
+ 450.48,
+ 330.69,
+ 602.76,
+ 300,
+ 1195.5,
+ 318.59,
+ 358.72,
+ 1820.46,
+ 318.61,
+ 332.47,
+ 233.39,
+ 571.04,
+ 214.46,
+ 399.84,
+ 421.04,
+ 336.97,
+ 279.36,
+ 457.29,
+ 194.38,
+ 444.14,
+ 262.04,
+ 348.14,
+ 748.06,
+ 235.08,
+ 520.28,
+ 380.69,
+ 493.37,
+ 913.66,
+ 475.3,
+ 610.4,
+ 419.52,
+ 181.21,
+ 201.28,
+ 241.21,
+ 206.6,
+ 345.98,
+ 398.01,
+ 514.33,
+ 267.75,
+ 338.17,
+ 406.07,
+ 414.05,
+ 558.47,
+ 340.41,
+ 212.49,
+ 501.52,
+ 241.26,
+ 720.87,
+ 1123.8,
+ 370.35,
+ 410.12,
+ 359.98,
+ 558.47,
+ 358.61,
+ 262.68,
+ 199.86,
+ 358.72,
+ 455.56,
+ 215.72,
+ 284.38,
+ 267.24,
+ 417.49,
+ 497.44,
+ 430.18,
+ 217.96,
+ 316.35,
+ 182.87,
+ 257.6,
+ 571.04,
+ 525.35,
+ 222.32,
+ 348.45,
+ 350.02,
+ 239.49,
+ 284.15,
+ 235.27,
+ 500.91,
+ 235.5,
+ 683.41,
+ 271.24,
+ 245.55,
+ 347.19,
+ 929.3,
+ 211.28,
+ 201.28,
+ 374.6,
+ 347.76,
+ 399.72,
+ 329.93,
+ 345.2,
+ 893.35,
+ 223.11,
+ 266.48,
+ 517.57,
+ 700.47,
+ 283.14,
+ 312.42,
+ 325.49,
+ 795.76,
+ 197.25,
+ 201,
+ 1027.86,
+ 292.41,
+ 361.66,
+ 465.96,
+ 391.79,
+ 483.44,
+ 388.19,
+ 231.28,
+ 222.92,
+ 512.79,
+ 257.6,
+ 464.44,
+ 235.61,
+ 507.59,
+ 516.72,
+ 268.58,
+ 428.92,
+ 593.88,
+ 621.79,
+ 616.08,
+ 205.77,
+ 266.42,
+ 263.65,
+ 324.18,
+ 418.65,
+ 318.51,
+ 182.21,
+ 212.43,
+ 303.64,
+ 390.84,
+ 265.21,
+ 460.14,
+ 414.91,
+ 364.47,
+ 241.1,
+ 178.27,
+ 254.91,
+ 177.52,
+ 403.14,
+ 1081.16,
+ 260.11,
+ 873.05,
+ 842.59,
+ 213.69,
+ 1332.42,
+ 981.15,
+ 875.59,
+ 346.57,
+ 913.66,
+ 407.34,
+ 1532.06,
+ 227.15,
+ 355.31,
+ 408.06,
+ 747.42,
+ 1713.11,
+ 363.34,
+ 184.02,
+ 348.97,
+ 1407.03
+ ],
+ "sizemode": "area",
+ "sizeref": 4.55115
+ },
+ "mode": "markers",
+ "name": "",
+ "showlegend": false,
+ "subplot": "mapbox",
+ "type": "scattermapbox"
+ }
+ ],
+ "layout": {
+ "coloraxis": {
+ "colorbar": {
+ "title": {
+ "text": "price"
+ }
+ },
+ "colorscale": [
+ [
+ 0,
+ "rgb(3, 35, 51)"
+ ],
+ [
+ 0.09090909090909091,
+ "rgb(13, 48, 100)"
+ ],
+ [
+ 0.18181818181818182,
+ "rgb(53, 50, 155)"
+ ],
+ [
+ 0.2727272727272727,
+ "rgb(93, 62, 153)"
+ ],
+ [
+ 0.36363636363636365,
+ "rgb(126, 77, 143)"
+ ],
+ [
+ 0.45454545454545453,
+ "rgb(158, 89, 135)"
+ ],
+ [
+ 0.5454545454545454,
+ "rgb(193, 100, 121)"
+ ],
+ [
+ 0.6363636363636364,
+ "rgb(225, 113, 97)"
+ ],
+ [
+ 0.7272727272727273,
+ "rgb(246, 139, 69)"
+ ],
+ [
+ 0.8181818181818182,
+ "rgb(251, 173, 60)"
+ ],
+ [
+ 0.9090909090909091,
+ "rgb(246, 211, 70)"
+ ],
+ [
+ 1,
+ "rgb(231, 250, 90)"
+ ]
+ ]
+ },
+ "height": 1000,
+ "legend": {
+ "itemsizing": "constant",
+ "tracegroupgap": 0
+ },
+ "mapbox": {
+ "center": {
+ "lat": 52.36194237574405,
+ "lon": 4.890813530014372
+ },
+ "domain": {
+ "x": [
+ 0,
+ 1
+ ],
+ "y": [
+ 0,
+ 1
+ ]
+ },
+ "style": "open-street-map",
+ "zoom": 11.5
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Hotel Locations in Amsterdam Colored by Price"
+ },
+ "width": 1000
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter_mapbox(\n",
+ " df_hotels,\n",
+ " lat=\"latitude\",\n",
+ " lon=\"longitude\",\n",
+ " color=\"price\",\n",
+ " size=\"price\",\n",
+ " hover_name=\"name\",\n",
+ " hover_data={\"price\": True, \"stars\": True, \"review_score\": True},\n",
+ " color_continuous_scale=\"thermal\",\n",
+ " size_max=20,\n",
+ " zoom=11.5, # good zoom level for Amsterdam\n",
+ " title=\"Hotel Locations in Amsterdam Colored by Price\",\n",
+ ")\n",
+ "\n",
+ "fig.update_layout(\n",
+ " mapbox_style=\"open-street-map\", \n",
+ " height=1000,\n",
+ " width=1000\n",
+ ")\n",
+ "\n",
+ "fig.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "7b9b9cf4",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# SABINA COMMENT: When using gradients on heatmaps, please use divergent gradients \n",
+ "# (i.e. gradients that start in one colour and end in the opposite colour)\n",
+ "# only when you have both NEGATIVE & POSITIVE values\n",
+ "# When you have ONLY NEGATIVE or ONLY POSITIVE values, please stick to monochrome gradients\n",
+ "# This way, I can easily understand: darker shade = higher price\n",
+ "# Here, I see blue and yellow and get confused, which is why\n",
+ "# I'm glad you also used size as a way to indicate price, it's\n",
+ "# much less confusing"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "510b6025",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The highest-priced hotels (yellow/orange markers) are mainly concentrated in Amsterdam’s historic city center, where demand and tourism activity are strongest.\n",
+ "# Mid-priced hotels (purple/red markers) form a wide ring around the city center, showing a gradual drop in price as you move outward.\n",
+ "# The lowest-priced hotels (dark blue markers) are mostly located outside the central canal belt.\n",
+ "# This pattern reflects a classic location premium: the more central and scenic the location, the higher the price.\n",
+ "# A few expensive outliers appear outside the center, likely boutique or luxury properties positioned in quieter upscale neighborhoods.\n",
+ "# A few cheaper hotels are also located in the city center, typically because they are hostels, older budget properties, have fewer amenities, or compete aggressively in a dense market to attract price-sensitive travelers.\n",
+ "# Overall, the map shows that location strongly influences price, with the center commanding a premium—but exceptions exist due to hotel type, quality, and market strategy."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "91c07962",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# SABINA COMMENT: To make this analysis more quantitative, I would have\n",
+ "# calculated a feature called distance_from_centre where you pick whatever you \n",
+ "# want to call the centre (e.g. Amsterdam Centraal station maybe)\n",
+ "# and then do a scatterplot of the distance vs the price"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 110,
+ "id": "9f0ec490",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "customdata": [
+ [
+ 5,
+ 580.97,
+ 8.4
+ ],
+ [
+ 4,
+ 303.13,
+ 8.9
+ ],
+ [
+ 4,
+ 432.32,
+ 8.1
+ ],
+ [
+ 4,
+ 244.4,
+ 8.4
+ ],
+ [
+ 3,
+ 233.49,
+ 8.2
+ ],
+ [
+ 4,
+ 383.23,
+ 8.5
+ ],
+ [
+ 4,
+ 439,
+ 8.9
+ ],
+ [
+ 0,
+ 359.75,
+ 8
+ ],
+ [
+ 4,
+ 406.07,
+ 8.8
+ ],
+ [
+ 3,
+ 374.75,
+ 7.7
+ ],
+ [
+ 0,
+ 495.09,
+ 8
+ ],
+ [
+ 3,
+ 363.57,
+ 8.2
+ ],
+ [
+ 4,
+ 250.07,
+ 8.5
+ ],
+ [
+ 4,
+ 243.83,
+ 8.7
+ ],
+ [
+ 3,
+ 235.57,
+ 8.1
+ ],
+ [
+ 4,
+ 489.82,
+ 8.6
+ ],
+ [
+ 4,
+ 291.52,
+ 8.2
+ ],
+ [
+ 4,
+ 283.23,
+ 8.5
+ ],
+ [
+ 4,
+ 318.95,
+ 8.3
+ ],
+ [
+ 3,
+ 210.65,
+ 7.9
+ ],
+ [
+ 2,
+ 466.54,
+ 7.2
+ ],
+ [
+ 3,
+ 517.74,
+ 8.3
+ ],
+ [
+ 4,
+ 369.27,
+ 8.7
+ ],
+ [
+ 4,
+ 402.02,
+ 8.6
+ ],
+ [
+ 4,
+ 385.54,
+ 9.1
+ ],
+ [
+ 4,
+ 286.66,
+ 8.6
+ ],
+ [
+ 3,
+ 201.77,
+ 8.1
+ ],
+ [
+ 3,
+ 180.16,
+ 8.1
+ ],
+ [
+ 4,
+ 231.36,
+ 8.5
+ ],
+ [
+ 0,
+ 241.1,
+ 8
+ ],
+ [
+ 4,
+ 225.43,
+ 8.4
+ ],
+ [
+ 4,
+ 201.28,
+ 8.7
+ ],
+ [
+ 4,
+ 451.23,
+ 8.5
+ ],
+ [
+ 4,
+ 321.46,
+ 8.5
+ ],
+ [
+ 4,
+ 261.53,
+ 8.6
+ ],
+ [
+ 4,
+ 403.53,
+ 8.5
+ ],
+ [
+ 3,
+ 195.42,
+ 7.7
+ ],
+ [
+ 4,
+ 227.27,
+ 8.8
+ ],
+ [
+ 3,
+ 350.11,
+ 7.9
+ ],
+ [
+ 3,
+ 392.11,
+ 8.2
+ ],
+ [
+ 3,
+ 404.7,
+ 8.2
+ ],
+ [
+ 4,
+ 263.95,
+ 8.6
+ ],
+ [
+ 3,
+ 392.11,
+ 8
+ ],
+ [
+ 3,
+ 198.56,
+ 7.8
+ ],
+ [
+ 4,
+ 219.53,
+ 8.3
+ ],
+ [
+ 5,
+ 522.03,
+ 8.5
+ ],
+ [
+ 4,
+ 244.85,
+ 8.6
+ ],
+ [
+ 3,
+ 280.44,
+ 8.6
+ ],
+ [
+ 4,
+ 274.1,
+ 8.7
+ ],
+ [
+ 4,
+ 373.43,
+ 8.8
+ ],
+ [
+ 4,
+ 383.05,
+ 8.4
+ ],
+ [
+ 4,
+ 238.57,
+ 8.7
+ ],
+ [
+ 4,
+ 369,
+ 8.6
+ ],
+ [
+ 4,
+ 353.11,
+ 8.2
+ ],
+ [
+ 3,
+ 528.87,
+ 8.4
+ ],
+ [
+ 4,
+ 561.05,
+ 9.2
+ ],
+ [
+ 4,
+ 602.76,
+ 8.7
+ ],
+ [
+ 4,
+ 450.48,
+ 8.1
+ ],
+ [
+ 4,
+ 330.69,
+ 9.1
+ ],
+ [
+ 4,
+ 602.76,
+ 8.8
+ ],
+ [
+ 4,
+ 300,
+ 8.7
+ ],
+ [
+ 2,
+ 1195.5,
+ 6.3
+ ],
+ [
+ 4,
+ 318.59,
+ 9
+ ],
+ [
+ 4,
+ 358.72,
+ 8.7
+ ],
+ [
+ 3,
+ 1820.46,
+ 6.7
+ ],
+ [
+ 4,
+ 318.61,
+ 8.9
+ ],
+ [
+ 4,
+ 332.47,
+ 8
+ ],
+ [
+ 4,
+ 233.39,
+ 8.5
+ ],
+ [
+ 1,
+ 571.04,
+ 8.1
+ ],
+ [
+ 4,
+ 214.46,
+ 7.6
+ ],
+ [
+ 4,
+ 399.84,
+ 8.6
+ ],
+ [
+ 4,
+ 421.04,
+ 8
+ ],
+ [
+ 4,
+ 336.97,
+ 8.5
+ ],
+ [
+ 4,
+ 279.36,
+ 8.2
+ ],
+ [
+ 3,
+ 457.29,
+ 8
+ ],
+ [
+ 4,
+ 194.38,
+ 8.2
+ ],
+ [
+ 4,
+ 444.14,
+ 8.9
+ ],
+ [
+ 3,
+ 262.04,
+ 7.5
+ ],
+ [
+ 3,
+ 348.14,
+ 7.9
+ ],
+ [
+ 5,
+ 748.06,
+ 7.6
+ ],
+ [
+ 0,
+ 235.08,
+ 8.2
+ ],
+ [
+ 5,
+ 520.28,
+ 8.8
+ ],
+ [
+ 2,
+ 380.69,
+ 7.2
+ ],
+ [
+ 4,
+ 493.37,
+ 8.7
+ ],
+ [
+ 2,
+ 913.66,
+ 7.7
+ ],
+ [
+ 4,
+ 475.3,
+ 8.3
+ ],
+ [
+ 5,
+ 610.4,
+ 8.4
+ ],
+ [
+ 3,
+ 419.52,
+ 8.7
+ ],
+ [
+ 4,
+ 181.21,
+ 8.5
+ ],
+ [
+ 3,
+ 201.28,
+ 8.3
+ ],
+ [
+ 4,
+ 241.21,
+ 8.3
+ ],
+ [
+ 3,
+ 206.6,
+ 8.4
+ ],
+ [
+ 4,
+ 345.98,
+ 8.5
+ ],
+ [
+ 5,
+ 398.01,
+ 8.9
+ ],
+ [
+ 3,
+ 514.33,
+ 8.3
+ ],
+ [
+ 3,
+ 267.75,
+ 8.6
+ ],
+ [
+ 2,
+ 338.17,
+ 7
+ ],
+ [
+ 3,
+ 406.07,
+ 7.9
+ ],
+ [
+ 4,
+ 414.05,
+ 7.7
+ ],
+ [
+ 3,
+ 558.47,
+ 8.2
+ ],
+ [
+ 3,
+ 340.41,
+ 8.2
+ ],
+ [
+ 3,
+ 212.49,
+ 8
+ ],
+ [
+ 4,
+ 501.52,
+ 9.1
+ ],
+ [
+ 3,
+ 241.26,
+ 7.9
+ ],
+ [
+ 3,
+ 720.87,
+ 7.6
+ ],
+ [
+ 4,
+ 1123.8,
+ 8.9
+ ],
+ [
+ 0,
+ 370.35,
+ 7.7
+ ],
+ [
+ 4,
+ 410.12,
+ 8
+ ],
+ [
+ 4,
+ 359.98,
+ 8.4
+ ],
+ [
+ 5,
+ 558.47,
+ 7.9
+ ],
+ [
+ 4,
+ 358.61,
+ 8.7
+ ],
+ [
+ 2,
+ 262.68,
+ 7.4
+ ],
+ [
+ 4,
+ 199.86,
+ 7.4
+ ],
+ [
+ 3,
+ 358.72,
+ 8.6
+ ],
+ [
+ 3,
+ 455.56,
+ 8.3
+ ],
+ [
+ 4,
+ 215.72,
+ 8.1
+ ],
+ [
+ 4,
+ 284.38,
+ 9
+ ],
+ [
+ 0,
+ 267.24,
+ 8.6
+ ],
+ [
+ 4,
+ 417.49,
+ 8.4
+ ],
+ [
+ 4,
+ 497.44,
+ 8.7
+ ],
+ [
+ 4,
+ 430.18,
+ 8.6
+ ],
+ [
+ 4,
+ 217.96,
+ 7.5
+ ],
+ [
+ 3,
+ 316.35,
+ 7.6
+ ],
+ [
+ 3,
+ 182.87,
+ 7.9
+ ],
+ [
+ 4,
+ 257.6,
+ 8.3
+ ],
+ [
+ 1,
+ 571.04,
+ 7.3
+ ],
+ [
+ 3,
+ 525.35,
+ 8
+ ],
+ [
+ 4,
+ 222.32,
+ 8.3
+ ],
+ [
+ 3,
+ 348.45,
+ 6.3
+ ],
+ [
+ 4,
+ 350.02,
+ 8
+ ],
+ [
+ 3,
+ 239.49,
+ 8.7
+ ],
+ [
+ 4,
+ 284.15,
+ 9.3
+ ],
+ [
+ 4,
+ 235.27,
+ 8.4
+ ],
+ [
+ 3,
+ 500.91,
+ 8.5
+ ],
+ [
+ 2,
+ 235.5,
+ 7.6
+ ],
+ [
+ 3,
+ 683.41,
+ 8.6
+ ],
+ [
+ 2,
+ 271.24,
+ 7.6
+ ],
+ [
+ 3,
+ 245.55,
+ 8.9
+ ],
+ [
+ 3,
+ 347.19,
+ 7.2
+ ],
+ [
+ 0,
+ 929.3,
+ 9.4
+ ],
+ [
+ 0,
+ 211.28,
+ 8.4
+ ],
+ [
+ 4,
+ 201.28,
+ 8.5
+ ],
+ [
+ 3,
+ 374.6,
+ 8.9
+ ],
+ [
+ 2,
+ 347.76,
+ 8
+ ],
+ [
+ 2,
+ 399.72,
+ 7.5
+ ],
+ [
+ 0,
+ 329.93,
+ 8.2
+ ],
+ [
+ 3,
+ 345.2,
+ 8.7
+ ],
+ [
+ 5,
+ 893.35,
+ 8.9
+ ],
+ [
+ 3,
+ 223.11,
+ 7.9
+ ],
+ [
+ 1,
+ 266.48,
+ 7.6
+ ],
+ [
+ 0,
+ 517.57,
+ 8.9
+ ],
+ [
+ 3,
+ 700.47,
+ 6.9
+ ],
+ [
+ 3,
+ 283.14,
+ 7.7
+ ],
+ [
+ 5,
+ 312.42,
+ 7.9
+ ],
+ [
+ 0,
+ 325.49,
+ 8.6
+ ],
+ [
+ 5,
+ 795.76,
+ 8.8
+ ],
+ [
+ 3,
+ 197.25,
+ 7.4
+ ],
+ [
+ 0,
+ 201,
+ 8.7
+ ],
+ [
+ 3,
+ 1027.86,
+ 6
+ ],
+ [
+ 4,
+ 292.41,
+ 9
+ ],
+ [
+ 3,
+ 361.66,
+ 7.5
+ ],
+ [
+ 4,
+ 465.96,
+ 8.9
+ ],
+ [
+ 0,
+ 391.79,
+ 7.9
+ ],
+ [
+ 4,
+ 483.44,
+ 8.7
+ ],
+ [
+ 3,
+ 388.19,
+ 7.6
+ ],
+ [
+ 4,
+ 231.28,
+ 8.2
+ ],
+ [
+ 4,
+ 222.92,
+ 8.6
+ ],
+ [
+ 3,
+ 512.79,
+ 7.8
+ ],
+ [
+ 3,
+ 257.6,
+ 8
+ ],
+ [
+ 3,
+ 464.44,
+ 8.8
+ ],
+ [
+ 0,
+ 235.61,
+ 9
+ ],
+ [
+ 4,
+ 507.59,
+ 8.8
+ ],
+ [
+ 5,
+ 516.72,
+ 8.5
+ ],
+ [
+ 3,
+ 268.58,
+ 8
+ ],
+ [
+ 3,
+ 428.92,
+ 8.3
+ ],
+ [
+ 4,
+ 593.88,
+ 8.7
+ ],
+ [
+ 1,
+ 621.79,
+ 7.5
+ ],
+ [
+ 5,
+ 616.08,
+ 8.8
+ ],
+ [
+ 4,
+ 205.77,
+ 8.2
+ ],
+ [
+ 4,
+ 266.42,
+ 8.5
+ ],
+ [
+ 3,
+ 263.65,
+ 7.7
+ ],
+ [
+ 3,
+ 324.18,
+ 7.9
+ ],
+ [
+ 0,
+ 418.65,
+ 7.8
+ ],
+ [
+ 4,
+ 318.51,
+ 8.6
+ ],
+ [
+ 3,
+ 182.21,
+ 7.2
+ ],
+ [
+ 2,
+ 212.43,
+ 6.5
+ ],
+ [
+ 0,
+ 303.64,
+ 7.4
+ ],
+ [
+ 3,
+ 390.84,
+ 7.9
+ ],
+ [
+ 3,
+ 265.21,
+ 7.8
+ ],
+ [
+ 4,
+ 460.14,
+ 8.4
+ ],
+ [
+ 2,
+ 414.91,
+ 8.3
+ ],
+ [
+ 4,
+ 364.47,
+ 8.7
+ ],
+ [
+ 0,
+ 241.1,
+ 8.9
+ ],
+ [
+ 3,
+ 178.27,
+ 7.8
+ ],
+ [
+ 4,
+ 254.91,
+ 9.1
+ ],
+ [
+ 3,
+ 177.52,
+ 6
+ ],
+ [
+ 4,
+ 403.14,
+ 7.6
+ ],
+ [
+ 5,
+ 1081.16,
+ 9.1
+ ],
+ [
+ 4,
+ 260.11,
+ 8.4
+ ],
+ [
+ 5,
+ 873.05,
+ 8.6
+ ],
+ [
+ 5,
+ 842.59,
+ 9
+ ],
+ [
+ 3,
+ 213.69,
+ 7.2
+ ],
+ [
+ 5,
+ 1332.42,
+ 8.7
+ ],
+ [
+ 0,
+ 981.15,
+ 9.7
+ ],
+ [
+ 3,
+ 875.59,
+ 6.5
+ ],
+ [
+ 2,
+ 346.57,
+ 7.9
+ ],
+ [
+ 5,
+ 913.66,
+ 9.2
+ ],
+ [
+ 3,
+ 407.34,
+ 8.7
+ ],
+ [
+ 5,
+ 1532.06,
+ 9.5
+ ],
+ [
+ 3,
+ 227.15,
+ 6.9
+ ],
+ [
+ 4,
+ 355.31,
+ 8.6
+ ],
+ [
+ 2,
+ 408.06,
+ 6.9
+ ],
+ [
+ 5,
+ 747.42,
+ 9.4
+ ],
+ [
+ 5,
+ 1713.11,
+ 9.6
+ ],
+ [
+ 3,
+ 363.34,
+ 7.9
+ ],
+ [
+ 3,
+ 184.02,
+ 7.7
+ ],
+ [
+ 3,
+ 348.97,
+ 6.9
+ ],
+ [
+ 5,
+ 1407.03,
+ 9.7
+ ]
+ ],
+ "hovertemplate": "%{hovertext}
stars=%{marker.color}
latitude=%{lat}
longitude=%{lon}
price=%{customdata[1]}
review_score=%{customdata[2]}",
+ "hovertext": [
+ "Hyatt Regency Amsterdam",
+ "Chasse Residency Hotel",
+ "Swissôtel Amsterdam",
+ "Holiday Inn - the niu, Fender Amsterdam",
+ "Holiday Inn Express Amsterdam - North Riverside by IHG",
+ "Mövenpick Hotel Amsterdam City Centre",
+ "Hotel V Oosterpark",
+ "Hans Brinker Hostel Amsterdam",
+ "Citadines Canal Amsterdam",
+ "ibis Amsterdam Centre",
+ "Renaissance Amsterdam Hotel",
+ "Hotel Van Gogh",
+ "Mercure Amsterdam Sloterdijk Station",
+ "Ruby Emma Hotel Amsterdam",
+ "Hampton By Hilton Amsterdam Arena Boulevard",
+ "Park Plaza Victoria Amsterdam",
+ "Inntel Hotels Amsterdam Landmark",
+ "Apollo Hotel Amsterdam, a Tribute Portfolio Hotel",
+ "DoubleTree by Hilton Amsterdam Centraal Station",
+ "Holiday Inn Express Amsterdam Arena Towers by IHG",
+ "ITC Hotel",
+ "Holiday Inn Express Amsterdam - City Hall by IHG",
+ "Sir Adam Hotel, part of Sircle Collection",
+ "Bob W Amsterdam Noord",
+ "Monet Garden Hotel Amsterdam",
+ "Bob W Oosterpark",
+ "Holiday Inn Express Amsterdam - Sloterdijk Station by IHG",
+ "Via Amsterdam",
+ "Postillion Hotel Amsterdam",
+ "Hotel Hortus",
+ "Park Inn by Radisson Amsterdam City West",
+ "XO Hotels Couture",
+ "Clayton Hotel Amsterdam American",
+ "DoubleTree by Hilton Amsterdam - NDSM Wharf",
+ "Olympic Hotel",
+ "Sir Albert Hotel, part of Sircle Collection",
+ "The Concert Hotel",
+ "Van der Valk Hotel Amsterdam - Amstel",
+ "ibis Amsterdam Centre Stopera",
+ "ibis Styles Amsterdam City",
+ "Stanley Collection Hotel Hegra Amsterdam",
+ "Leonardo Royal Hotel Amsterdam",
+ "ibis Styles Amsterdam Amstel",
+ "Joy Hotel",
+ "Mercure Amsterdam City Hotel",
+ "Pestana Amsterdam Riverside",
+ "The Social Hub Amsterdam City",
+ "Motel One Amsterdam",
+ "Van der Valk Hotel Amsterdam Zuidas -Rai",
+ "Avani Museum Quarter Amsterdam Hotel",
+ "Hampton by Hilton Amsterdam Centre East",
+ "Crowne Plaza Amsterdam - South by IHG",
+ "Residence Inn by Marriott Amsterdam Houthavens",
+ "Inntel Hotels Amsterdam Centre",
+ "Conscious Hotel The Tire Station",
+ "Hotel Estheréa",
+ "Canal House",
+ "Leonardo Boutique Museumhotel",
+ "PREMIER SUITES Amsterdam",
+ "Banks Mansion - All Inclusive Boutique Hotel",
+ "Jaz in the City Amsterdam",
+ "Camp-Inn Hotel",
+ "Mercure Amsterdam North Station",
+ "Huygens Place Amsterdam",
+ "Triple G Hotels",
+ "INNSiDE by Meliá Amsterdam",
+ "Leonardo Hotel Amsterdam City Center",
+ "Novotel Amsterdam City",
+ "The Crown Hotel",
+ "Fletcher Hotel Amsterdam",
+ "Room Mate Aitana, Amsterdam",
+ "NH Amsterdam Schiller",
+ "Adam Suites Hotel",
+ "Moxy Amsterdam Houthavens",
+ "The Times Hotel",
+ "XO Hotels Blue Tower",
+ "citizenM Amstel Amsterdam",
+ "Hotel Atlas Vondelpark",
+ "Hotel Fine Harmony",
+ "W Amsterdam",
+ "De Bedstee Boutique Capsules",
+ "Kimpton De Witt Amsterdam by IHG",
+ "Hotel Washington",
+ "Dikker & Thijs Hotel",
+ "Mozart Hotel",
+ "Hotel Arena",
+ "The Diamond Amsterdam",
+ "The Bank Hotel",
+ "Courtyard by Marriott Amsterdam Arena Atlas",
+ "Hotel Levell",
+ "YOTEL Amsterdam",
+ "Bunk Hotel Amsterdam",
+ "Conscious Hotel Westerpark",
+ "Hotel Okura Amsterdam – The Leading Hotels of the World",
+ "Hotel New Kit",
+ "Boutique Hotel View",
+ "Quentin England Hotel",
+ "Generator Amsterdam",
+ "De Jonker Urban Suites",
+ "Hotel Mansion",
+ "Leonardo Hotel Amsterdam Leidse Square",
+ "ibis Amsterdam City West",
+ "Morgan & Mees Amsterdam",
+ "XO Hotel Inner",
+ "Hotel Allure",
+ "Met Hotel Amsterdam",
+ "Limehome Amsterdam Gatwickstraat",
+ "Quentin Zoo hotel",
+ "The Manor Amsterdam",
+ "Amsterdam Marriott Hotel",
+ "Boutique Hotel Notting Hill",
+ "Nadia Hotel",
+ "OZO Hotels Arena Amsterdam",
+ "Krisotel",
+ "Nova Hotel",
+ "Holiday Inn Amsterdam - Arena Towers by IHG",
+ "Element Amsterdam",
+ "Pension Homeland",
+ "Park Centraal Amsterdam, part of Sircle Collection",
+ "Nova Apartments Amsterdam",
+ "Park Plaza Vondelpark Amsterdam",
+ "Mercure Hotel Amsterdam West",
+ "Hotel Espresso",
+ "XO Hotels Blue Square",
+ "Leonardo Hotel Amsterdam Rembrandtpark",
+ "The Old Nickel Hotel",
+ "Max Brown Hotel Canal District, part of Sircle Collection",
+ "Corendon Amsterdam New-West, a Tribute Portfolio Hotel",
+ "Quentin Amsterdam Hotel",
+ "NH Amsterdam Caransa",
+ "Hotel2Stay",
+ "The July - Boat & Co",
+ "Urban Lodge Hotel",
+ "Conscious Hotel Vondelpark",
+ "easyHotel Amsterdam City Centre South",
+ "The IF Boutique hotel",
+ "Hotel Old Quarter",
+ "Hotel Casa Amsterdam",
+ "Delta Hotel City Center",
+ "Studio Koggeschip",
+ "Hotel Jansen Amsterdam Bajeskwartier",
+ "XO Hotels Park West",
+ "Amsterdam ID Aparthotel",
+ "Weber Hotel",
+ "Hotel Pagi",
+ "Golden Mansion Aparthotel",
+ "Hotel Fita",
+ "Pulitzer Amsterdam",
+ "Qbic Amsterdam WTC",
+ "Hotel Corner House",
+ "Amsterdam-Houseboat-Amstel",
+ "OZO Hotels Cordial Amsterdam",
+ "The Alfred Hotel",
+ "Bilderberg Garden Hotel",
+ "hotel calisto",
+ "Andaz Amsterdam, Prinsengracht, By Hyatt",
+ "Hotel Victorie",
+ "Volkshotel",
+ "Belfort Hotel",
+ "nhow Amsterdam Rai",
+ "Avenue Hotel",
+ "Jan Luyken Amsterdam",
+ "Heart of Amsterdam Hostel",
+ "Conscious Hotel Museum Square",
+ "Cityview Hotel",
+ "Four Elements Hotel",
+ "NH Amsterdam Noord",
+ "Ciao Papa Hotel Amsterdam Central Station",
+ "Holiday Inn Express Amsterdam - South by IHG",
+ "Hotel Omega",
+ "Outside Inn",
+ "INK Hotel Amsterdam - MGallery Collection",
+ "The College Hotel Amsterdam, Autograph Collection",
+ "ClinkNOORD Hostel",
+ "Hotel Residence Le Coin",
+ "art'otel amsterdam, Powered by Radisson Hotels",
+ "Hotel Abba",
+ "Tivoli Doelen Amsterdam Hotel",
+ "NH Amsterdam Zuid",
+ "The Social Hub Amsterdam West 4 star",
+ "Hotel Park Plantage",
+ "Hotel & Wellness Zuiver",
+ "Limehome Amsterdam Leidsekruisstraat",
+ "citizenM Amsterdam South",
+ "Bastion Hotel Amsterdam Amstel",
+ "MAX Hotel Amsterdam",
+ "City Rooms Amsterdam Hemonystraat - Digital access",
+ "Max Brown Hotel Museum Square, part of Sircle Collection",
+ "Hotel Fogo Amsterdam",
+ "Radisson Blu Hotel, Amsterdam City Center",
+ "Weber Hotel 397",
+ "The Delphi - Amsterdam Townhouse",
+ "Skotel Amsterdam, Hotelschool The Hague",
+ "XO Hotels Infinity",
+ "The July - Twenty Eight",
+ "Westlake Hotels Amsterdam",
+ "Leonardo Boutique Hotel The Lancaster Hotel Amsterdam",
+ "Conservatorium Hotel - Operated by Mandarin Oriental",
+ "Via Suites",
+ "InterContinental Amstel Amsterdam by IHG",
+ "Sofitel Legend The Grand Amsterdam",
+ "Q-Factory Hotel",
+ "Rosewood Amsterdam",
+ "Leidse Square 5 star Luxury Apartment",
+ "OZO Hotels Armada Amsterdam",
+ "Weber Hotel 117",
+ "De L’Europe Amsterdam – The Leading Hotels of the World",
+ "Motel One Amsterdam-Waterlooplein",
+ "Waldorf Astoria Amsterdam",
+ "Bastion Hotel Amsterdam Zuidwest",
+ "The Hoxton Lloyd Amsterdam City Centre East",
+ "Quentin Golden Bear Hotel",
+ "Pillows Grand Boutique Hotel Maurits at the Park - Small Luxury Hotels",
+ "Hotel TwentySeven - Small Luxury Hotels of the World",
+ "Prinsengracht Hotel",
+ "Campanile Hotel & Restaurant Amsterdam Zuid-Oost",
+ "Hotel Doria",
+ "Crane Hotel Faralda"
+ ],
+ "lat": [
+ 52.361798,
+ 52.351902,
+ 52.3735015639879,
+ 52.3689672,
+ 52.3841044464671,
+ 52.3778244039078,
+ 52.3618697208272,
+ 52.3636789,
+ 52.361026,
+ 52.3795419603305,
+ 52.3777675899871,
+ 52.3590558708137,
+ 52.387911,
+ 52.338347,
+ 52.3130603489422,
+ 52.3773479298031,
+ 52.3734396516721,
+ 52.3485731229379,
+ 52.3767126229996,
+ 52.3095778808935,
+ 52.3622245746876,
+ 52.370508,
+ 52.3837837705751,
+ 52.3965941042896,
+ 52.3697879175963,
+ 52.3549487,
+ 52.3882024042909,
+ 52.326207,
+ 52.3336117162739,
+ 52.3667708460243,
+ 52.390137,
+ 52.3511038699022,
+ 52.363893,
+ 52.4006568133759,
+ 52.341453,
+ 52.3545448464899,
+ 52.3549105780971,
+ 52.3333118146981,
+ 52.3700479003282,
+ 52.3579747412563,
+ 52.3714185900611,
+ 52.332426,
+ 52.3578952935714,
+ 52.3052759309378,
+ 52.3352390967979,
+ 52.3533287816013,
+ 52.3545938706784,
+ 52.3389789,
+ 52.336339,
+ 52.3557710388443,
+ 52.37133354,
+ 52.3358045267172,
+ 52.401722,
+ 52.3761845581983,
+ 52.357210691928,
+ 52.3704728678235,
+ 52.3762435052799,
+ 52.3612528575306,
+ 52.3375320353285,
+ 52.3653832244084,
+ 52.3142104,
+ 52.3826261860431,
+ 52.402437,
+ 52.362523087804,
+ 52.382749,
+ 52.3399845540409,
+ 52.3621398113363,
+ 52.333801725009,
+ 52.374897,
+ 52.2944386032995,
+ 52.3842761,
+ 52.3657488663193,
+ 52.3805227130876,
+ 52.401708,
+ 52.3754755496354,
+ 52.3793250181387,
+ 52.360949,
+ 52.3577085499967,
+ 52.3742253375528,
+ 52.3727871,
+ 52.3557911065058,
+ 52.3771969,
+ 52.3548896909311,
+ 52.3650847306161,
+ 52.3635697104527,
+ 52.3609924189596,
+ 52.3637926,
+ 52.38093936996,
+ 52.310162,
+ 52.3043624730413,
+ 52.391486,
+ 52.38808,
+ 52.3866061,
+ 52.3484551548406,
+ 52.378758,
+ 52.3648906471507,
+ 52.3614788973101,
+ 52.360993770212,
+ 52.3660603421124,
+ 52.3741996,
+ 52.364136,
+ 52.3922488195172,
+ 52.3743254,
+ 52.3569550152757,
+ 52.3618286015023,
+ 52.362654,
+ 52.3905283,
+ 52.36676,
+ 52.3590874033621,
+ 52.3626582165351,
+ 52.3584051486544,
+ 52.3738200603831,
+ 52.304806261585,
+ 52.365747,
+ 52.3712343600445,
+ 52.3096565954741,
+ 52.3318032874812,
+ 52.3730475260495,
+ 52.361593145237,
+ 52.3545784300335,
+ 52.3542499654985,
+ 52.3375048702365,
+ 52.3628600898999,
+ 52.3785865880488,
+ 52.3679418353713,
+ 52.3763294696329,
+ 52.3788935865371,
+ 52.3466449,
+ 52.3642477907647,
+ 52.3664514799061,
+ 52.387052242092,
+ 52.394036005692,
+ 52.3856494,
+ 52.3578617125481,
+ 52.3522127755719,
+ 52.359005091078,
+ 52.3759119269223,
+ 52.3498912311701,
+ 52.3756892358625,
+ 52.3773253,
+ 52.339954,
+ 52.3856249128608,
+ 52.3874575746578,
+ 52.3648857336342,
+ 52.3692724674063,
+ 52.3590162611425,
+ 52.3592102572324,
+ 52.37282362571,
+ 52.3402687108229,
+ 52.3742711914492,
+ 52.3581028827505,
+ 52.3707029544915,
+ 52.3535724695694,
+ 52.3513157924539,
+ 52.3823596305708,
+ 52.3678574924207,
+ 52.3468297845623,
+ 52.3537109,
+ 52.3576802926766,
+ 52.338489,
+ 52.3766373025148,
+ 52.3597614573926,
+ 52.3723323595859,
+ 52.3554163721413,
+ 52.379748,
+ 52.3544748942031,
+ 52.3921931674547,
+ 52.378642,
+ 52.3258551826725,
+ 52.355843,
+ 52.326535,
+ 52.3755639716479,
+ 52.3527640630135,
+ 52.3841992220711,
+ 52.3678173680479,
+ 52.3776721292375,
+ 52.3627085825928,
+ 52.3682186101361,
+ 52.3266731785754,
+ 52.37226,
+ 52.3664334643127,
+ 52.3310022397142,
+ 52.3636477,
+ 52.3418435228634,
+ 52.3337378043121,
+ 52.357917817414,
+ 52.35813,
+ 52.3599989709438,
+ 52.355375399345,
+ 52.3701379708517,
+ 52.3649577984884,
+ 52.3505248757999,
+ 52.3692891,
+ 52.381116191928,
+ 52.3432309277564,
+ 52.3623732172734,
+ 52.3658921741934,
+ 52.3585869750682,
+ 52.326138,
+ 52.3600415594456,
+ 52.3711983327514,
+ 52.3575427561554,
+ 52.36573564045,
+ 52.365333,
+ 52.3640545225574,
+ 52.3651023703734,
+ 52.3676388550903,
+ 52.3699794423125,
+ 52.364638,
+ 52.3575345009985,
+ 52.374241,
+ 52.3656137470407,
+ 52.362194,
+ 52.3724914,
+ 52.36198338772,
+ 52.3117288441657,
+ 52.372422425451,
+ 52.3992798782431
+ ],
+ "legendgroup": "",
+ "lon": [
+ 4.911744,
+ 4.924964,
+ 4.89331215620041,
+ 4.9463418,
+ 4.91952350926207,
+ 4.91414219141006,
+ 4.92270692381791,
+ 4.88805460000003,
+ 4.893588,
+ 4.89696532487869,
+ 4.89438101649284,
+ 4.88014921545982,
+ 4.834296,
+ 4.92086,
+ 4.94809359312057,
+ 4.89777535200119,
+ 4.92843508863831,
+ 4.88510727882385,
+ 4.90566909313202,
+ 4.94186959259036,
+ 4.89858202636242,
+ 4.90835,
+ 4.90240858888546,
+ 4.90684051779097,
+ 4.90726228255619,
+ 4.9285033,
+ 4.83745515346527,
+ 4.953709,
+ 4.92219427514647,
+ 4.90905001759529,
+ 4.842565,
+ 4.84125409510648,
+ 4.881296,
+ 4.89350185850526,
+ 4.853175,
+ 4.88731205463409,
+ 4.87704757601023,
+ 4.91446652778632,
+ 4.90765661001205,
+ 4.90066040307283,
+ 4.88726913928986,
+ 4.917847,
+ 4.90029025822878,
+ 4.95023131370544,
+ 4.9135098606348,
+ 4.90716399999997,
+ 4.91263214907383,
+ 4.89257459999999,
+ 4.887724,
+ 4.88620162010193,
+ 4.934809346,
+ 4.87454742193222,
+ 4.874767,
+ 4.89444941282272,
+ 4.85544981739667,
+ 4.88849088549614,
+ 4.88632701337337,
+ 4.88415978848934,
+ 4.86796079629515,
+ 4.89309288561344,
+ 4.93931620000001,
+ 4.85761788032187,
+ 4.931234,
+ 4.87563338130713,
+ 4.85784,
+ 4.87108765145111,
+ 4.87834140658379,
+ 4.88854050636292,
+ 4.89999,
+ 4.94534432888031,
+ 4.89465280000002,
+ 4.8966957628727,
+ 4.8869948329575,
+ 4.874811,
+ 4.88894149661064,
+ 4.84565332531929,
+ 4.905943,
+ 4.87398952245712,
+ 4.90481983743439,
+ 4.89000590000001,
+ 4.87775735557079,
+ 4.8955395,
+ 4.88353483378887,
+ 4.88395091146231,
+ 4.88622978329659,
+ 4.91579040884972,
+ 4.8833159,
+ 4.89037379622459,
+ 4.94645200000002,
+ 4.95098888346706,
+ 4.903551,
+ 4.91425,
+ 4.87529649999999,
+ 4.89281058311462,
+ 4.837766,
+ 4.87977102398872,
+ 4.87710893154144,
+ 4.91903621904908,
+ 4.91230891408611,
+ 4.90487689999998,
+ 4.878342,
+ 4.8501044511795,
+ 4.87461831349185,
+ 4.87741805613041,
+ 4.91056948900223,
+ 4.835317,
+ 4.841889,
+ 4.911423,
+ 4.92611087858677,
+ 4.87966239452362,
+ 4.89892099052668,
+ 4.88560751080513,
+ 4.94765461349175,
+ 4.879751,
+ 4.89013105630875,
+ 4.94188032142642,
+ 4.87750001904908,
+ 4.91685894973762,
+ 4.88302554935217,
+ 4.87975794821978,
+ 4.86642569303513,
+ 4.81692954897881,
+ 4.87637232989073,
+ 4.82055857777596,
+ 4.84405875205994,
+ 4.89954560995102,
+ 4.89205554127693,
+ 4.83109839999997,
+ 4.87990915775299,
+ 4.89692106842995,
+ 4.8394093674591,
+ 4.88258942460629,
+ 4.83444299999996,
+ 4.85650956630707,
+ 4.89166025072336,
+ 4.90271598100662,
+ 4.89886298775673,
+ 4.91888970136643,
+ 4.89610970020294,
+ 4.89305579999996,
+ 4.924154,
+ 4.84716810286045,
+ 4.83446717262268,
+ 4.88023370504379,
+ 4.89186644554138,
+ 4.89794578650822,
+ 4.87968116998672,
+ 4.88328203558922,
+ 4.87348794937134,
+ 4.89150166511536,
+ 4.89719734750327,
+ 4.89241696894169,
+ 4.87214963988117,
+ 4.87409010529518,
+ 4.8874618914017,
+ 4.88283142447472,
+ 4.90290641784668,
+ 4.91191600000002,
+ 4.85044240951538,
+ 4.891107,
+ 4.89465594291687,
+ 4.88107189536095,
+ 4.89758223295212,
+ 4.87812280654907,
+ 4.892712,
+ 5.00559633862306,
+ 4.91089671850204,
+ 4.895241,
+ 4.8670694231987,
+ 4.875724,
+ 4.931027,
+ 4.89289775490761,
+ 4.88361194729805,
+ 4.90390362334097,
+ 4.89441722631454,
+ 4.89721544086933,
+ 4.87461045384407,
+ 4.89572614431381,
+ 4.87995475530624,
+ 4.8364,
+ 4.91136878728867,
+ 4.85347867012024,
+ 4.8853753,
+ 4.87593680620193,
+ 4.92792874574661,
+ 4.9021178483963,
+ 4.902205,
+ 4.88204687833786,
+ 4.772438482658,
+ 4.89670112729073,
+ 4.88048851490021,
+ 4.87697213888168,
+ 4.8438768,
+ 4.8208911716938,
+ 4.85753103547779,
+ 4.79466319084167,
+ 4.91293653845787,
+ 4.87848825752735,
+ 4.953825,
+ 4.90546524524689,
+ 4.8954002559185,
+ 4.93057484418023,
+ 4.88310919170289,
+ 4.8819123,
+ 4.89844556897879,
+ 4.8803501018524,
+ 4.89420533180237,
+ 4.90738492868036,
+ 4.89644229999999,
+ 4.84374225139618,
+ 4.93466,
+ 4.88519445061684,
+ 4.919684,
+ 4.89332549999995,
+ 4.89448126405478,
+ 4.98621582984924,
+ 4.89441740508482,
+ 4.89473192953028
+ ],
+ "marker": {
+ "color": [
+ 5,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 3,
+ 0,
+ 3,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 5,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 2,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 1,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 2,
+ 4,
+ 2,
+ 4,
+ 5,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 3,
+ 3,
+ 2,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 5,
+ 4,
+ 2,
+ 4,
+ 3,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 1,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 2,
+ 3,
+ 3,
+ 0,
+ 0,
+ 4,
+ 3,
+ 2,
+ 2,
+ 0,
+ 3,
+ 5,
+ 3,
+ 1,
+ 0,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 3,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 0,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 3,
+ 0,
+ 4,
+ 5,
+ 3,
+ 3,
+ 4,
+ 1,
+ 5,
+ 4,
+ 4,
+ 3,
+ 3,
+ 0,
+ 4,
+ 3,
+ 2,
+ 0,
+ 3,
+ 3,
+ 4,
+ 2,
+ 4,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 4,
+ 5,
+ 5,
+ 3,
+ 5,
+ 0,
+ 3,
+ 2,
+ 5,
+ 3,
+ 5,
+ 3,
+ 4,
+ 2,
+ 5,
+ 5,
+ 3,
+ 3,
+ 3,
+ 5
+ ],
+ "coloraxis": "coloraxis",
+ "size": [
+ 5,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 3,
+ 0,
+ 3,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 5,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 2,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 1,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 2,
+ 4,
+ 2,
+ 4,
+ 5,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 3,
+ 3,
+ 2,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 5,
+ 4,
+ 2,
+ 4,
+ 3,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 1,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 2,
+ 3,
+ 3,
+ 0,
+ 0,
+ 4,
+ 3,
+ 2,
+ 2,
+ 0,
+ 3,
+ 5,
+ 3,
+ 1,
+ 0,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 3,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 0,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 3,
+ 0,
+ 4,
+ 5,
+ 3,
+ 3,
+ 4,
+ 1,
+ 5,
+ 4,
+ 4,
+ 3,
+ 3,
+ 0,
+ 4,
+ 3,
+ 2,
+ 0,
+ 3,
+ 3,
+ 4,
+ 2,
+ 4,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 4,
+ 5,
+ 5,
+ 3,
+ 5,
+ 0,
+ 3,
+ 2,
+ 5,
+ 3,
+ 5,
+ 3,
+ 4,
+ 2,
+ 5,
+ 5,
+ 3,
+ 3,
+ 3,
+ 5
+ ],
+ "sizemode": "area",
+ "sizeref": 0.022222222222222223
+ },
+ "mode": "markers",
+ "name": "",
+ "showlegend": false,
+ "subplot": "mapbox",
+ "type": "scattermapbox"
+ }
+ ],
+ "layout": {
+ "coloraxis": {
+ "colorbar": {
+ "title": {
+ "text": "stars"
+ }
+ },
+ "colorscale": [
+ [
+ 0,
+ "#000004"
+ ],
+ [
+ 0.1111111111111111,
+ "#180f3d"
+ ],
+ [
+ 0.2222222222222222,
+ "#440f76"
+ ],
+ [
+ 0.3333333333333333,
+ "#721f81"
+ ],
+ [
+ 0.4444444444444444,
+ "#9e2f7f"
+ ],
+ [
+ 0.5555555555555556,
+ "#cd4071"
+ ],
+ [
+ 0.6666666666666666,
+ "#f1605d"
+ ],
+ [
+ 0.7777777777777778,
+ "#fd9668"
+ ],
+ [
+ 0.8888888888888888,
+ "#feca8d"
+ ],
+ [
+ 1,
+ "#fcfdbf"
+ ]
+ ]
+ },
+ "height": 1000,
+ "legend": {
+ "itemsizing": "constant",
+ "tracegroupgap": 0
+ },
+ "mapbox": {
+ "center": {
+ "lat": 52.36194237574405,
+ "lon": 4.890813530014372
+ },
+ "domain": {
+ "x": [
+ 0,
+ 1
+ ],
+ "y": [
+ 0,
+ 1
+ ]
+ },
+ "style": "open-street-map",
+ "zoom": 11.5
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Hotel Locations in Amsterdam Colored by Star Rating"
+ },
+ "width": 1000
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter_mapbox(\n",
+ " df_hotels,\n",
+ " lat=\"latitude\",\n",
+ " lon=\"longitude\",\n",
+ " color=\"stars\", # color by star rating\n",
+ " size=\"stars\", # size by star rating\n",
+ " hover_name=\"name\",\n",
+ " hover_data={\"stars\": True, \"price\": True, \"review_score\": True},\n",
+ " color_continuous_scale=\"magma\", # good scale for categorical-ish values\n",
+ " size_max=15,\n",
+ " zoom=11.5,\n",
+ " title=\"Hotel Locations in Amsterdam Colored by Star Rating\",\n",
+ ")\n",
+ "\n",
+ "fig.update_layout(\n",
+ " mapbox_style=\"open-street-map\",\n",
+ " height=1000,\n",
+ " width=1000\n",
+ ")\n",
+ "\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "68f51cab",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# 4-star hotels form the largest group, and they are distributed evenly across the entire city, showing that this category is widespread and not limited to specific neighbourhoods.\n",
+ "# 3-star hotels are the second largest group, also spread broadly, but they appear more concentrated in the city center, and toward the south and west, where many mid-range tourist accommodations are located.\n",
+ "# 5-star hotels cluster mainly around the historic city center, close to major attractions, canals, and premium shopping streets.\n",
+ "# Lower-star hotels (0–2 stars) also tend to cluster near the historic center, likely due to the high demand in that area even for budget options.\n",
+ "# Across all categories, the strongest overall clustering of hotels is around the historic canal belt and the Museum Quarter, which are the key tourism zones of Amsterdam."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 51,
+ "id": "7d99a3bb",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "alignmentgroup": "True",
+ "hovertemplate": "Stars=%{x}
Average Price (USD)=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "pattern": {
+ "shape": ""
+ }
+ },
+ "name": "",
+ "offsetgroup": "",
+ "orientation": "v",
+ "showlegend": false,
+ "textposition": "auto",
+ "type": "bar",
+ "x": [
+ 0,
+ 1,
+ 2,
+ 3,
+ 4,
+ 5
+ ],
+ "xaxis": "x",
+ "y": [
+ 391.9511111111111,
+ 507.5875,
+ 442.3878571428572,
+ 378.2377142857143,
+ 348.0937362637363,
+ 834.05
+ ],
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "barmode": "relative",
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Average Price by Star Rating"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Stars"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Average Price (USD)"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "avg_price_by_stars = (\n",
+ " df_hotels.groupby(\"stars\", as_index=False)[\"price\"].mean()\n",
+ ")\n",
+ "\n",
+ "fig = px.bar(\n",
+ " avg_price_by_stars,\n",
+ " x=\"stars\",\n",
+ " y=\"price\",\n",
+ " title=\"Average Price by Star Rating\",\n",
+ " labels={\"stars\": \"Stars\", \"price\": \"Average Price (USD)\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 52,
+ "id": "5f40e1bb",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "alignmentgroup": "True",
+ "bingroup": "x",
+ "hovertemplate": "Number of Reviews=%{x}
count=%{y}",
+ "legendgroup": "",
+ "marker": {
+ "color": "#636efa",
+ "pattern": {
+ "shape": ""
+ }
+ },
+ "name": "",
+ "nbinsx": 30,
+ "offsetgroup": "",
+ "orientation": "v",
+ "showlegend": false,
+ "type": "histogram",
+ "x": [
+ 2869,
+ 3874,
+ 3679,
+ 4817,
+ 12096,
+ 6343,
+ 134,
+ 12687,
+ 1735,
+ 9837,
+ 660,
+ 4758,
+ 5026,
+ 8811,
+ 13132,
+ 8717,
+ 10359,
+ 1343,
+ 1052,
+ 17901,
+ 2144,
+ 3203,
+ 1361,
+ 3464,
+ 3901,
+ 978,
+ 9671,
+ 15319,
+ 10289,
+ 3553,
+ 20821,
+ 9124,
+ 4538,
+ 3036,
+ 8693,
+ 552,
+ 2482,
+ 5664,
+ 3692,
+ 2292,
+ 737,
+ 9065,
+ 2237,
+ 7274,
+ 3734,
+ 3780,
+ 10905,
+ 12367,
+ 5555,
+ 1109,
+ 2927,
+ 1286,
+ 1269,
+ 5389,
+ 2897,
+ 4242,
+ 905,
+ 3001,
+ 1943,
+ 935,
+ 11156,
+ 436,
+ 4401,
+ 3207,
+ 420,
+ 6323,
+ 1754,
+ 6004,
+ 610,
+ 3910,
+ 5984,
+ 2476,
+ 1775,
+ 2201,
+ 1903,
+ 8057,
+ 3077,
+ 1920,
+ 1702,
+ 891,
+ 2278,
+ 2265,
+ 2817,
+ 1859,
+ 5080,
+ 2929,
+ 563,
+ 1925,
+ 3327,
+ 17522,
+ 7578,
+ 7421,
+ 2757,
+ 1051,
+ 6140,
+ 1315,
+ 1653,
+ 7926,
+ 1376,
+ 1774,
+ 1842,
+ 3332,
+ 525,
+ 5284,
+ 2375,
+ 1697,
+ 866,
+ 1943,
+ 2206,
+ 1551,
+ 3011,
+ 5340,
+ 8262,
+ 2508,
+ 2129,
+ 4268,
+ 1993,
+ 3694,
+ 2681,
+ 599,
+ 4079,
+ 2447,
+ 1630,
+ 8270,
+ 7850,
+ 3258,
+ 1023,
+ 5593,
+ 1967,
+ 1660,
+ 3772,
+ 2338,
+ 2923,
+ 2329,
+ 2751,
+ 1275,
+ 3098,
+ 9845,
+ 4601,
+ 79,
+ 4172,
+ 10627,
+ 2709,
+ 2030,
+ 1609,
+ 1709,
+ 1943,
+ 1019,
+ 4926,
+ 2014,
+ 226,
+ 3230,
+ 6151,
+ 2678,
+ 804,
+ 751,
+ 188,
+ 5278,
+ 4476,
+ 10472,
+ 4805,
+ 1505,
+ 3284,
+ 1190,
+ 1154,
+ 4303,
+ 1001,
+ 1523,
+ 3191,
+ 1327,
+ 1501,
+ 1370,
+ 446,
+ 15598,
+ 2239,
+ 3514,
+ 3173,
+ 1501,
+ 2343,
+ 4057,
+ 2065,
+ 3983,
+ 318,
+ 5918,
+ 3559,
+ 1754,
+ 249,
+ 1285,
+ 5883,
+ 7118,
+ 1059,
+ 2377,
+ 1698,
+ 7044,
+ 1072,
+ 49,
+ 3104,
+ 251,
+ 2572,
+ 317,
+ 852,
+ 2840,
+ 59,
+ 94,
+ 1994,
+ 942,
+ 394,
+ 7986,
+ 216,
+ 1576,
+ 1887,
+ 860,
+ 646,
+ 259,
+ 3497,
+ 3730,
+ 3922,
+ 15
+ ],
+ "xaxis": "x",
+ "yaxis": "y"
+ }
+ ],
+ "layout": {
+ "barmode": "relative",
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Distribution of Number of Reviews"
+ },
+ "xaxis": {
+ "anchor": "y",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "Number of Reviews"
+ }
+ },
+ "yaxis": {
+ "anchor": "x",
+ "domain": [
+ 0,
+ 1
+ ],
+ "title": {
+ "text": "count"
+ }
+ }
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.histogram(\n",
+ " df_hotels,\n",
+ " x=\"review_count\",\n",
+ " nbins=30,\n",
+ " title=\"Distribution of Number of Reviews\",\n",
+ " labels={\"review_count\": \"Number of Reviews\"}\n",
+ ")\n",
+ "fig.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "fc93dfd1",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "# The majority of hotels fall within the 0–4,000 review range.\n",
+ "# The most common group is 1,000–2,000 reviews, indicating many hotels receive steady and consistent guest traffic.\n",
+ "# Only a small number of properties exceed 5,000 reviews, and very few reach 10,000+, representing the most popular high-volume hotels.\n",
+ "# Overall, the distribution shows that most hotels have moderate review counts, with only a handful standing out as extremely popular."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 112,
+ "id": "3ede205b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "application/vnd.plotly.v1+json": {
+ "config": {
+ "plotlyServerURL": "https://plot.ly"
+ },
+ "data": [
+ {
+ "customdata": [
+ [
+ 580.97,
+ 8.4
+ ],
+ [
+ 303.13,
+ 8.9
+ ],
+ [
+ 432.32,
+ 8.1
+ ],
+ [
+ 244.4,
+ 8.4
+ ],
+ [
+ 233.49,
+ 8.2
+ ],
+ [
+ 383.23,
+ 8.5
+ ],
+ [
+ 439,
+ 8.9
+ ],
+ [
+ 359.75,
+ 8
+ ],
+ [
+ 406.07,
+ 8.8
+ ],
+ [
+ 374.75,
+ 7.7
+ ],
+ [
+ 495.09,
+ 8
+ ],
+ [
+ 363.57,
+ 8.2
+ ],
+ [
+ 250.07,
+ 8.5
+ ],
+ [
+ 243.83,
+ 8.7
+ ],
+ [
+ 235.57,
+ 8.1
+ ],
+ [
+ 489.82,
+ 8.6
+ ],
+ [
+ 291.52,
+ 8.2
+ ],
+ [
+ 283.23,
+ 8.5
+ ],
+ [
+ 318.95,
+ 8.3
+ ],
+ [
+ 210.65,
+ 7.9
+ ],
+ [
+ 466.54,
+ 7.2
+ ],
+ [
+ 517.74,
+ 8.3
+ ],
+ [
+ 369.27,
+ 8.7
+ ],
+ [
+ 402.02,
+ 8.6
+ ],
+ [
+ 385.54,
+ 9.1
+ ],
+ [
+ 286.66,
+ 8.6
+ ],
+ [
+ 201.77,
+ 8.1
+ ],
+ [
+ 180.16,
+ 8.1
+ ],
+ [
+ 231.36,
+ 8.5
+ ],
+ [
+ 241.1,
+ 8
+ ],
+ [
+ 225.43,
+ 8.4
+ ],
+ [
+ 201.28,
+ 8.7
+ ],
+ [
+ 451.23,
+ 8.5
+ ],
+ [
+ 321.46,
+ 8.5
+ ],
+ [
+ 261.53,
+ 8.6
+ ],
+ [
+ 403.53,
+ 8.5
+ ],
+ [
+ 195.42,
+ 7.7
+ ],
+ [
+ 227.27,
+ 8.8
+ ],
+ [
+ 350.11,
+ 7.9
+ ],
+ [
+ 392.11,
+ 8.2
+ ],
+ [
+ 404.7,
+ 8.2
+ ],
+ [
+ 263.95,
+ 8.6
+ ],
+ [
+ 392.11,
+ 8
+ ],
+ [
+ 198.56,
+ 7.8
+ ],
+ [
+ 219.53,
+ 8.3
+ ],
+ [
+ 522.03,
+ 8.5
+ ],
+ [
+ 244.85,
+ 8.6
+ ],
+ [
+ 280.44,
+ 8.6
+ ],
+ [
+ 274.1,
+ 8.7
+ ],
+ [
+ 373.43,
+ 8.8
+ ],
+ [
+ 383.05,
+ 8.4
+ ],
+ [
+ 238.57,
+ 8.7
+ ],
+ [
+ 369,
+ 8.6
+ ],
+ [
+ 353.11,
+ 8.2
+ ],
+ [
+ 528.87,
+ 8.4
+ ],
+ [
+ 561.05,
+ 9.2
+ ],
+ [
+ 602.76,
+ 8.7
+ ],
+ [
+ 450.48,
+ 8.1
+ ],
+ [
+ 330.69,
+ 9.1
+ ],
+ [
+ 602.76,
+ 8.8
+ ],
+ [
+ 300,
+ 8.7
+ ],
+ [
+ 1195.5,
+ 6.3
+ ],
+ [
+ 318.59,
+ 9
+ ],
+ [
+ 358.72,
+ 8.7
+ ],
+ [
+ 1820.46,
+ 6.7
+ ],
+ [
+ 318.61,
+ 8.9
+ ],
+ [
+ 332.47,
+ 8
+ ],
+ [
+ 233.39,
+ 8.5
+ ],
+ [
+ 571.04,
+ 8.1
+ ],
+ [
+ 214.46,
+ 7.6
+ ],
+ [
+ 399.84,
+ 8.6
+ ],
+ [
+ 421.04,
+ 8
+ ],
+ [
+ 336.97,
+ 8.5
+ ],
+ [
+ 279.36,
+ 8.2
+ ],
+ [
+ 457.29,
+ 8
+ ],
+ [
+ 194.38,
+ 8.2
+ ],
+ [
+ 444.14,
+ 8.9
+ ],
+ [
+ 262.04,
+ 7.5
+ ],
+ [
+ 348.14,
+ 7.9
+ ],
+ [
+ 748.06,
+ 7.6
+ ],
+ [
+ 235.08,
+ 8.2
+ ],
+ [
+ 520.28,
+ 8.8
+ ],
+ [
+ 380.69,
+ 7.2
+ ],
+ [
+ 493.37,
+ 8.7
+ ],
+ [
+ 913.66,
+ 7.7
+ ],
+ [
+ 475.3,
+ 8.3
+ ],
+ [
+ 610.4,
+ 8.4
+ ],
+ [
+ 419.52,
+ 8.7
+ ],
+ [
+ 181.21,
+ 8.5
+ ],
+ [
+ 201.28,
+ 8.3
+ ],
+ [
+ 241.21,
+ 8.3
+ ],
+ [
+ 206.6,
+ 8.4
+ ],
+ [
+ 345.98,
+ 8.5
+ ],
+ [
+ 398.01,
+ 8.9
+ ],
+ [
+ 514.33,
+ 8.3
+ ],
+ [
+ 267.75,
+ 8.6
+ ],
+ [
+ 338.17,
+ 7
+ ],
+ [
+ 406.07,
+ 7.9
+ ],
+ [
+ 414.05,
+ 7.7
+ ],
+ [
+ 558.47,
+ 8.2
+ ],
+ [
+ 340.41,
+ 8.2
+ ],
+ [
+ 212.49,
+ 8
+ ],
+ [
+ 501.52,
+ 9.1
+ ],
+ [
+ 241.26,
+ 7.9
+ ],
+ [
+ 720.87,
+ 7.6
+ ],
+ [
+ 1123.8,
+ 8.9
+ ],
+ [
+ 370.35,
+ 7.7
+ ],
+ [
+ 410.12,
+ 8
+ ],
+ [
+ 359.98,
+ 8.4
+ ],
+ [
+ 558.47,
+ 7.9
+ ],
+ [
+ 358.61,
+ 8.7
+ ],
+ [
+ 262.68,
+ 7.4
+ ],
+ [
+ 199.86,
+ 7.4
+ ],
+ [
+ 358.72,
+ 8.6
+ ],
+ [
+ 455.56,
+ 8.3
+ ],
+ [
+ 215.72,
+ 8.1
+ ],
+ [
+ 284.38,
+ 9
+ ],
+ [
+ 267.24,
+ 8.6
+ ],
+ [
+ 417.49,
+ 8.4
+ ],
+ [
+ 497.44,
+ 8.7
+ ],
+ [
+ 430.18,
+ 8.6
+ ],
+ [
+ 217.96,
+ 7.5
+ ],
+ [
+ 316.35,
+ 7.6
+ ],
+ [
+ 182.87,
+ 7.9
+ ],
+ [
+ 257.6,
+ 8.3
+ ],
+ [
+ 571.04,
+ 7.3
+ ],
+ [
+ 525.35,
+ 8
+ ],
+ [
+ 222.32,
+ 8.3
+ ],
+ [
+ 348.45,
+ 6.3
+ ],
+ [
+ 350.02,
+ 8
+ ],
+ [
+ 239.49,
+ 8.7
+ ],
+ [
+ 284.15,
+ 9.3
+ ],
+ [
+ 235.27,
+ 8.4
+ ],
+ [
+ 500.91,
+ 8.5
+ ],
+ [
+ 235.5,
+ 7.6
+ ],
+ [
+ 683.41,
+ 8.6
+ ],
+ [
+ 271.24,
+ 7.6
+ ],
+ [
+ 245.55,
+ 8.9
+ ],
+ [
+ 347.19,
+ 7.2
+ ],
+ [
+ 929.3,
+ 9.4
+ ],
+ [
+ 211.28,
+ 8.4
+ ],
+ [
+ 201.28,
+ 8.5
+ ],
+ [
+ 374.6,
+ 8.9
+ ],
+ [
+ 347.76,
+ 8
+ ],
+ [
+ 399.72,
+ 7.5
+ ],
+ [
+ 329.93,
+ 8.2
+ ],
+ [
+ 345.2,
+ 8.7
+ ],
+ [
+ 893.35,
+ 8.9
+ ],
+ [
+ 223.11,
+ 7.9
+ ],
+ [
+ 266.48,
+ 7.6
+ ],
+ [
+ 517.57,
+ 8.9
+ ],
+ [
+ 700.47,
+ 6.9
+ ],
+ [
+ 283.14,
+ 7.7
+ ],
+ [
+ 312.42,
+ 7.9
+ ],
+ [
+ 325.49,
+ 8.6
+ ],
+ [
+ 795.76,
+ 8.8
+ ],
+ [
+ 197.25,
+ 7.4
+ ],
+ [
+ 201,
+ 8.7
+ ],
+ [
+ 1027.86,
+ 6
+ ],
+ [
+ 292.41,
+ 9
+ ],
+ [
+ 361.66,
+ 7.5
+ ],
+ [
+ 465.96,
+ 8.9
+ ],
+ [
+ 391.79,
+ 7.9
+ ],
+ [
+ 483.44,
+ 8.7
+ ],
+ [
+ 388.19,
+ 7.6
+ ],
+ [
+ 231.28,
+ 8.2
+ ],
+ [
+ 222.92,
+ 8.6
+ ],
+ [
+ 512.79,
+ 7.8
+ ],
+ [
+ 257.6,
+ 8
+ ],
+ [
+ 464.44,
+ 8.8
+ ],
+ [
+ 235.61,
+ 9
+ ],
+ [
+ 507.59,
+ 8.8
+ ],
+ [
+ 516.72,
+ 8.5
+ ],
+ [
+ 268.58,
+ 8
+ ],
+ [
+ 428.92,
+ 8.3
+ ],
+ [
+ 593.88,
+ 8.7
+ ],
+ [
+ 621.79,
+ 7.5
+ ],
+ [
+ 616.08,
+ 8.8
+ ],
+ [
+ 205.77,
+ 8.2
+ ],
+ [
+ 266.42,
+ 8.5
+ ],
+ [
+ 263.65,
+ 7.7
+ ],
+ [
+ 324.18,
+ 7.9
+ ],
+ [
+ 418.65,
+ 7.8
+ ],
+ [
+ 318.51,
+ 8.6
+ ],
+ [
+ 182.21,
+ 7.2
+ ],
+ [
+ 212.43,
+ 6.5
+ ],
+ [
+ 303.64,
+ 7.4
+ ],
+ [
+ 390.84,
+ 7.9
+ ],
+ [
+ 265.21,
+ 7.8
+ ],
+ [
+ 460.14,
+ 8.4
+ ],
+ [
+ 414.91,
+ 8.3
+ ],
+ [
+ 364.47,
+ 8.7
+ ],
+ [
+ 241.1,
+ 8.9
+ ],
+ [
+ 178.27,
+ 7.8
+ ],
+ [
+ 254.91,
+ 9.1
+ ],
+ [
+ 177.52,
+ 6
+ ],
+ [
+ 403.14,
+ 7.6
+ ],
+ [
+ 1081.16,
+ 9.1
+ ],
+ [
+ 260.11,
+ 8.4
+ ],
+ [
+ 873.05,
+ 8.6
+ ],
+ [
+ 842.59,
+ 9
+ ],
+ [
+ 213.69,
+ 7.2
+ ],
+ [
+ 1332.42,
+ 8.7
+ ],
+ [
+ 981.15,
+ 9.7
+ ],
+ [
+ 875.59,
+ 6.5
+ ],
+ [
+ 346.57,
+ 7.9
+ ],
+ [
+ 913.66,
+ 9.2
+ ],
+ [
+ 407.34,
+ 8.7
+ ],
+ [
+ 1532.06,
+ 9.5
+ ],
+ [
+ 227.15,
+ 6.9
+ ],
+ [
+ 355.31,
+ 8.6
+ ],
+ [
+ 408.06,
+ 6.9
+ ],
+ [
+ 747.42,
+ 9.4
+ ],
+ [
+ 1713.11,
+ 9.6
+ ],
+ [
+ 363.34,
+ 7.9
+ ],
+ [
+ 184.02,
+ 7.7
+ ],
+ [
+ 348.97,
+ 6.9
+ ],
+ [
+ 1407.03,
+ 9.7
+ ]
+ ],
+ "hovertemplate": "%{hovertext}
latitude=%{lat}
longitude=%{lon}
price=%{customdata[0]}
review_score=%{customdata[1]}
stars=%{marker.color}",
+ "hovertext": [
+ "Hyatt Regency Amsterdam",
+ "Chasse Residency Hotel",
+ "Swissôtel Amsterdam",
+ "Holiday Inn - the niu, Fender Amsterdam",
+ "Holiday Inn Express Amsterdam - North Riverside by IHG",
+ "Mövenpick Hotel Amsterdam City Centre",
+ "Hotel V Oosterpark",
+ "Hans Brinker Hostel Amsterdam",
+ "Citadines Canal Amsterdam",
+ "ibis Amsterdam Centre",
+ "Renaissance Amsterdam Hotel",
+ "Hotel Van Gogh",
+ "Mercure Amsterdam Sloterdijk Station",
+ "Ruby Emma Hotel Amsterdam",
+ "Hampton By Hilton Amsterdam Arena Boulevard",
+ "Park Plaza Victoria Amsterdam",
+ "Inntel Hotels Amsterdam Landmark",
+ "Apollo Hotel Amsterdam, a Tribute Portfolio Hotel",
+ "DoubleTree by Hilton Amsterdam Centraal Station",
+ "Holiday Inn Express Amsterdam Arena Towers by IHG",
+ "ITC Hotel",
+ "Holiday Inn Express Amsterdam - City Hall by IHG",
+ "Sir Adam Hotel, part of Sircle Collection",
+ "Bob W Amsterdam Noord",
+ "Monet Garden Hotel Amsterdam",
+ "Bob W Oosterpark",
+ "Holiday Inn Express Amsterdam - Sloterdijk Station by IHG",
+ "Via Amsterdam",
+ "Postillion Hotel Amsterdam",
+ "Hotel Hortus",
+ "Park Inn by Radisson Amsterdam City West",
+ "XO Hotels Couture",
+ "Clayton Hotel Amsterdam American",
+ "DoubleTree by Hilton Amsterdam - NDSM Wharf",
+ "Olympic Hotel",
+ "Sir Albert Hotel, part of Sircle Collection",
+ "The Concert Hotel",
+ "Van der Valk Hotel Amsterdam - Amstel",
+ "ibis Amsterdam Centre Stopera",
+ "ibis Styles Amsterdam City",
+ "Stanley Collection Hotel Hegra Amsterdam",
+ "Leonardo Royal Hotel Amsterdam",
+ "ibis Styles Amsterdam Amstel",
+ "Joy Hotel",
+ "Mercure Amsterdam City Hotel",
+ "Pestana Amsterdam Riverside",
+ "The Social Hub Amsterdam City",
+ "Motel One Amsterdam",
+ "Van der Valk Hotel Amsterdam Zuidas -Rai",
+ "Avani Museum Quarter Amsterdam Hotel",
+ "Hampton by Hilton Amsterdam Centre East",
+ "Crowne Plaza Amsterdam - South by IHG",
+ "Residence Inn by Marriott Amsterdam Houthavens",
+ "Inntel Hotels Amsterdam Centre",
+ "Conscious Hotel The Tire Station",
+ "Hotel Estheréa",
+ "Canal House",
+ "Leonardo Boutique Museumhotel",
+ "PREMIER SUITES Amsterdam",
+ "Banks Mansion - All Inclusive Boutique Hotel",
+ "Jaz in the City Amsterdam",
+ "Camp-Inn Hotel",
+ "Mercure Amsterdam North Station",
+ "Huygens Place Amsterdam",
+ "Triple G Hotels",
+ "INNSiDE by Meliá Amsterdam",
+ "Leonardo Hotel Amsterdam City Center",
+ "Novotel Amsterdam City",
+ "The Crown Hotel",
+ "Fletcher Hotel Amsterdam",
+ "Room Mate Aitana, Amsterdam",
+ "NH Amsterdam Schiller",
+ "Adam Suites Hotel",
+ "Moxy Amsterdam Houthavens",
+ "The Times Hotel",
+ "XO Hotels Blue Tower",
+ "citizenM Amstel Amsterdam",
+ "Hotel Atlas Vondelpark",
+ "Hotel Fine Harmony",
+ "W Amsterdam",
+ "De Bedstee Boutique Capsules",
+ "Kimpton De Witt Amsterdam by IHG",
+ "Hotel Washington",
+ "Dikker & Thijs Hotel",
+ "Mozart Hotel",
+ "Hotel Arena",
+ "The Diamond Amsterdam",
+ "The Bank Hotel",
+ "Courtyard by Marriott Amsterdam Arena Atlas",
+ "Hotel Levell",
+ "YOTEL Amsterdam",
+ "Bunk Hotel Amsterdam",
+ "Conscious Hotel Westerpark",
+ "Hotel Okura Amsterdam – The Leading Hotels of the World",
+ "Hotel New Kit",
+ "Boutique Hotel View",
+ "Quentin England Hotel",
+ "Generator Amsterdam",
+ "De Jonker Urban Suites",
+ "Hotel Mansion",
+ "Leonardo Hotel Amsterdam Leidse Square",
+ "ibis Amsterdam City West",
+ "Morgan & Mees Amsterdam",
+ "XO Hotel Inner",
+ "Hotel Allure",
+ "Met Hotel Amsterdam",
+ "Limehome Amsterdam Gatwickstraat",
+ "Quentin Zoo hotel",
+ "The Manor Amsterdam",
+ "Amsterdam Marriott Hotel",
+ "Boutique Hotel Notting Hill",
+ "Nadia Hotel",
+ "OZO Hotels Arena Amsterdam",
+ "Krisotel",
+ "Nova Hotel",
+ "Holiday Inn Amsterdam - Arena Towers by IHG",
+ "Element Amsterdam",
+ "Pension Homeland",
+ "Park Centraal Amsterdam, part of Sircle Collection",
+ "Nova Apartments Amsterdam",
+ "Park Plaza Vondelpark Amsterdam",
+ "Mercure Hotel Amsterdam West",
+ "Hotel Espresso",
+ "XO Hotels Blue Square",
+ "Leonardo Hotel Amsterdam Rembrandtpark",
+ "The Old Nickel Hotel",
+ "Max Brown Hotel Canal District, part of Sircle Collection",
+ "Corendon Amsterdam New-West, a Tribute Portfolio Hotel",
+ "Quentin Amsterdam Hotel",
+ "NH Amsterdam Caransa",
+ "Hotel2Stay",
+ "The July - Boat & Co",
+ "Urban Lodge Hotel",
+ "Conscious Hotel Vondelpark",
+ "easyHotel Amsterdam City Centre South",
+ "The IF Boutique hotel",
+ "Hotel Old Quarter",
+ "Hotel Casa Amsterdam",
+ "Delta Hotel City Center",
+ "Studio Koggeschip",
+ "Hotel Jansen Amsterdam Bajeskwartier",
+ "XO Hotels Park West",
+ "Amsterdam ID Aparthotel",
+ "Weber Hotel",
+ "Hotel Pagi",
+ "Golden Mansion Aparthotel",
+ "Hotel Fita",
+ "Pulitzer Amsterdam",
+ "Qbic Amsterdam WTC",
+ "Hotel Corner House",
+ "Amsterdam-Houseboat-Amstel",
+ "OZO Hotels Cordial Amsterdam",
+ "The Alfred Hotel",
+ "Bilderberg Garden Hotel",
+ "hotel calisto",
+ "Andaz Amsterdam, Prinsengracht, By Hyatt",
+ "Hotel Victorie",
+ "Volkshotel",
+ "Belfort Hotel",
+ "nhow Amsterdam Rai",
+ "Avenue Hotel",
+ "Jan Luyken Amsterdam",
+ "Heart of Amsterdam Hostel",
+ "Conscious Hotel Museum Square",
+ "Cityview Hotel",
+ "Four Elements Hotel",
+ "NH Amsterdam Noord",
+ "Ciao Papa Hotel Amsterdam Central Station",
+ "Holiday Inn Express Amsterdam - South by IHG",
+ "Hotel Omega",
+ "Outside Inn",
+ "INK Hotel Amsterdam - MGallery Collection",
+ "The College Hotel Amsterdam, Autograph Collection",
+ "ClinkNOORD Hostel",
+ "Hotel Residence Le Coin",
+ "art'otel amsterdam, Powered by Radisson Hotels",
+ "Hotel Abba",
+ "Tivoli Doelen Amsterdam Hotel",
+ "NH Amsterdam Zuid",
+ "The Social Hub Amsterdam West 4 star",
+ "Hotel Park Plantage",
+ "Hotel & Wellness Zuiver",
+ "Limehome Amsterdam Leidsekruisstraat",
+ "citizenM Amsterdam South",
+ "Bastion Hotel Amsterdam Amstel",
+ "MAX Hotel Amsterdam",
+ "City Rooms Amsterdam Hemonystraat - Digital access",
+ "Max Brown Hotel Museum Square, part of Sircle Collection",
+ "Hotel Fogo Amsterdam",
+ "Radisson Blu Hotel, Amsterdam City Center",
+ "Weber Hotel 397",
+ "The Delphi - Amsterdam Townhouse",
+ "Skotel Amsterdam, Hotelschool The Hague",
+ "XO Hotels Infinity",
+ "The July - Twenty Eight",
+ "Westlake Hotels Amsterdam",
+ "Leonardo Boutique Hotel The Lancaster Hotel Amsterdam",
+ "Conservatorium Hotel - Operated by Mandarin Oriental",
+ "Via Suites",
+ "InterContinental Amstel Amsterdam by IHG",
+ "Sofitel Legend The Grand Amsterdam",
+ "Q-Factory Hotel",
+ "Rosewood Amsterdam",
+ "Leidse Square 5 star Luxury Apartment",
+ "OZO Hotels Armada Amsterdam",
+ "Weber Hotel 117",
+ "De L’Europe Amsterdam – The Leading Hotels of the World",
+ "Motel One Amsterdam-Waterlooplein",
+ "Waldorf Astoria Amsterdam",
+ "Bastion Hotel Amsterdam Zuidwest",
+ "The Hoxton Lloyd Amsterdam City Centre East",
+ "Quentin Golden Bear Hotel",
+ "Pillows Grand Boutique Hotel Maurits at the Park - Small Luxury Hotels",
+ "Hotel TwentySeven - Small Luxury Hotels of the World",
+ "Prinsengracht Hotel",
+ "Campanile Hotel & Restaurant Amsterdam Zuid-Oost",
+ "Hotel Doria",
+ "Crane Hotel Faralda"
+ ],
+ "lat": [
+ 52.361798,
+ 52.351902,
+ 52.3735015639879,
+ 52.3689672,
+ 52.3841044464671,
+ 52.3778244039078,
+ 52.3618697208272,
+ 52.3636789,
+ 52.361026,
+ 52.3795419603305,
+ 52.3777675899871,
+ 52.3590558708137,
+ 52.387911,
+ 52.338347,
+ 52.3130603489422,
+ 52.3773479298031,
+ 52.3734396516721,
+ 52.3485731229379,
+ 52.3767126229996,
+ 52.3095778808935,
+ 52.3622245746876,
+ 52.370508,
+ 52.3837837705751,
+ 52.3965941042896,
+ 52.3697879175963,
+ 52.3549487,
+ 52.3882024042909,
+ 52.326207,
+ 52.3336117162739,
+ 52.3667708460243,
+ 52.390137,
+ 52.3511038699022,
+ 52.363893,
+ 52.4006568133759,
+ 52.341453,
+ 52.3545448464899,
+ 52.3549105780971,
+ 52.3333118146981,
+ 52.3700479003282,
+ 52.3579747412563,
+ 52.3714185900611,
+ 52.332426,
+ 52.3578952935714,
+ 52.3052759309378,
+ 52.3352390967979,
+ 52.3533287816013,
+ 52.3545938706784,
+ 52.3389789,
+ 52.336339,
+ 52.3557710388443,
+ 52.37133354,
+ 52.3358045267172,
+ 52.401722,
+ 52.3761845581983,
+ 52.357210691928,
+ 52.3704728678235,
+ 52.3762435052799,
+ 52.3612528575306,
+ 52.3375320353285,
+ 52.3653832244084,
+ 52.3142104,
+ 52.3826261860431,
+ 52.402437,
+ 52.362523087804,
+ 52.382749,
+ 52.3399845540409,
+ 52.3621398113363,
+ 52.333801725009,
+ 52.374897,
+ 52.2944386032995,
+ 52.3842761,
+ 52.3657488663193,
+ 52.3805227130876,
+ 52.401708,
+ 52.3754755496354,
+ 52.3793250181387,
+ 52.360949,
+ 52.3577085499967,
+ 52.3742253375528,
+ 52.3727871,
+ 52.3557911065058,
+ 52.3771969,
+ 52.3548896909311,
+ 52.3650847306161,
+ 52.3635697104527,
+ 52.3609924189596,
+ 52.3637926,
+ 52.38093936996,
+ 52.310162,
+ 52.3043624730413,
+ 52.391486,
+ 52.38808,
+ 52.3866061,
+ 52.3484551548406,
+ 52.378758,
+ 52.3648906471507,
+ 52.3614788973101,
+ 52.360993770212,
+ 52.3660603421124,
+ 52.3741996,
+ 52.364136,
+ 52.3922488195172,
+ 52.3743254,
+ 52.3569550152757,
+ 52.3618286015023,
+ 52.362654,
+ 52.3905283,
+ 52.36676,
+ 52.3590874033621,
+ 52.3626582165351,
+ 52.3584051486544,
+ 52.3738200603831,
+ 52.304806261585,
+ 52.365747,
+ 52.3712343600445,
+ 52.3096565954741,
+ 52.3318032874812,
+ 52.3730475260495,
+ 52.361593145237,
+ 52.3545784300335,
+ 52.3542499654985,
+ 52.3375048702365,
+ 52.3628600898999,
+ 52.3785865880488,
+ 52.3679418353713,
+ 52.3763294696329,
+ 52.3788935865371,
+ 52.3466449,
+ 52.3642477907647,
+ 52.3664514799061,
+ 52.387052242092,
+ 52.394036005692,
+ 52.3856494,
+ 52.3578617125481,
+ 52.3522127755719,
+ 52.359005091078,
+ 52.3759119269223,
+ 52.3498912311701,
+ 52.3756892358625,
+ 52.3773253,
+ 52.339954,
+ 52.3856249128608,
+ 52.3874575746578,
+ 52.3648857336342,
+ 52.3692724674063,
+ 52.3590162611425,
+ 52.3592102572324,
+ 52.37282362571,
+ 52.3402687108229,
+ 52.3742711914492,
+ 52.3581028827505,
+ 52.3707029544915,
+ 52.3535724695694,
+ 52.3513157924539,
+ 52.3823596305708,
+ 52.3678574924207,
+ 52.3468297845623,
+ 52.3537109,
+ 52.3576802926766,
+ 52.338489,
+ 52.3766373025148,
+ 52.3597614573926,
+ 52.3723323595859,
+ 52.3554163721413,
+ 52.379748,
+ 52.3544748942031,
+ 52.3921931674547,
+ 52.378642,
+ 52.3258551826725,
+ 52.355843,
+ 52.326535,
+ 52.3755639716479,
+ 52.3527640630135,
+ 52.3841992220711,
+ 52.3678173680479,
+ 52.3776721292375,
+ 52.3627085825928,
+ 52.3682186101361,
+ 52.3266731785754,
+ 52.37226,
+ 52.3664334643127,
+ 52.3310022397142,
+ 52.3636477,
+ 52.3418435228634,
+ 52.3337378043121,
+ 52.357917817414,
+ 52.35813,
+ 52.3599989709438,
+ 52.355375399345,
+ 52.3701379708517,
+ 52.3649577984884,
+ 52.3505248757999,
+ 52.3692891,
+ 52.381116191928,
+ 52.3432309277564,
+ 52.3623732172734,
+ 52.3658921741934,
+ 52.3585869750682,
+ 52.326138,
+ 52.3600415594456,
+ 52.3711983327514,
+ 52.3575427561554,
+ 52.36573564045,
+ 52.365333,
+ 52.3640545225574,
+ 52.3651023703734,
+ 52.3676388550903,
+ 52.3699794423125,
+ 52.364638,
+ 52.3575345009985,
+ 52.374241,
+ 52.3656137470407,
+ 52.362194,
+ 52.3724914,
+ 52.36198338772,
+ 52.3117288441657,
+ 52.372422425451,
+ 52.3992798782431
+ ],
+ "legendgroup": "",
+ "lon": [
+ 4.911744,
+ 4.924964,
+ 4.89331215620041,
+ 4.9463418,
+ 4.91952350926207,
+ 4.91414219141006,
+ 4.92270692381791,
+ 4.88805460000003,
+ 4.893588,
+ 4.89696532487869,
+ 4.89438101649284,
+ 4.88014921545982,
+ 4.834296,
+ 4.92086,
+ 4.94809359312057,
+ 4.89777535200119,
+ 4.92843508863831,
+ 4.88510727882385,
+ 4.90566909313202,
+ 4.94186959259036,
+ 4.89858202636242,
+ 4.90835,
+ 4.90240858888546,
+ 4.90684051779097,
+ 4.90726228255619,
+ 4.9285033,
+ 4.83745515346527,
+ 4.953709,
+ 4.92219427514647,
+ 4.90905001759529,
+ 4.842565,
+ 4.84125409510648,
+ 4.881296,
+ 4.89350185850526,
+ 4.853175,
+ 4.88731205463409,
+ 4.87704757601023,
+ 4.91446652778632,
+ 4.90765661001205,
+ 4.90066040307283,
+ 4.88726913928986,
+ 4.917847,
+ 4.90029025822878,
+ 4.95023131370544,
+ 4.9135098606348,
+ 4.90716399999997,
+ 4.91263214907383,
+ 4.89257459999999,
+ 4.887724,
+ 4.88620162010193,
+ 4.934809346,
+ 4.87454742193222,
+ 4.874767,
+ 4.89444941282272,
+ 4.85544981739667,
+ 4.88849088549614,
+ 4.88632701337337,
+ 4.88415978848934,
+ 4.86796079629515,
+ 4.89309288561344,
+ 4.93931620000001,
+ 4.85761788032187,
+ 4.931234,
+ 4.87563338130713,
+ 4.85784,
+ 4.87108765145111,
+ 4.87834140658379,
+ 4.88854050636292,
+ 4.89999,
+ 4.94534432888031,
+ 4.89465280000002,
+ 4.8966957628727,
+ 4.8869948329575,
+ 4.874811,
+ 4.88894149661064,
+ 4.84565332531929,
+ 4.905943,
+ 4.87398952245712,
+ 4.90481983743439,
+ 4.89000590000001,
+ 4.87775735557079,
+ 4.8955395,
+ 4.88353483378887,
+ 4.88395091146231,
+ 4.88622978329659,
+ 4.91579040884972,
+ 4.8833159,
+ 4.89037379622459,
+ 4.94645200000002,
+ 4.95098888346706,
+ 4.903551,
+ 4.91425,
+ 4.87529649999999,
+ 4.89281058311462,
+ 4.837766,
+ 4.87977102398872,
+ 4.87710893154144,
+ 4.91903621904908,
+ 4.91230891408611,
+ 4.90487689999998,
+ 4.878342,
+ 4.8501044511795,
+ 4.87461831349185,
+ 4.87741805613041,
+ 4.91056948900223,
+ 4.835317,
+ 4.841889,
+ 4.911423,
+ 4.92611087858677,
+ 4.87966239452362,
+ 4.89892099052668,
+ 4.88560751080513,
+ 4.94765461349175,
+ 4.879751,
+ 4.89013105630875,
+ 4.94188032142642,
+ 4.87750001904908,
+ 4.91685894973762,
+ 4.88302554935217,
+ 4.87975794821978,
+ 4.86642569303513,
+ 4.81692954897881,
+ 4.87637232989073,
+ 4.82055857777596,
+ 4.84405875205994,
+ 4.89954560995102,
+ 4.89205554127693,
+ 4.83109839999997,
+ 4.87990915775299,
+ 4.89692106842995,
+ 4.8394093674591,
+ 4.88258942460629,
+ 4.83444299999996,
+ 4.85650956630707,
+ 4.89166025072336,
+ 4.90271598100662,
+ 4.89886298775673,
+ 4.91888970136643,
+ 4.89610970020294,
+ 4.89305579999996,
+ 4.924154,
+ 4.84716810286045,
+ 4.83446717262268,
+ 4.88023370504379,
+ 4.89186644554138,
+ 4.89794578650822,
+ 4.87968116998672,
+ 4.88328203558922,
+ 4.87348794937134,
+ 4.89150166511536,
+ 4.89719734750327,
+ 4.89241696894169,
+ 4.87214963988117,
+ 4.87409010529518,
+ 4.8874618914017,
+ 4.88283142447472,
+ 4.90290641784668,
+ 4.91191600000002,
+ 4.85044240951538,
+ 4.891107,
+ 4.89465594291687,
+ 4.88107189536095,
+ 4.89758223295212,
+ 4.87812280654907,
+ 4.892712,
+ 5.00559633862306,
+ 4.91089671850204,
+ 4.895241,
+ 4.8670694231987,
+ 4.875724,
+ 4.931027,
+ 4.89289775490761,
+ 4.88361194729805,
+ 4.90390362334097,
+ 4.89441722631454,
+ 4.89721544086933,
+ 4.87461045384407,
+ 4.89572614431381,
+ 4.87995475530624,
+ 4.8364,
+ 4.91136878728867,
+ 4.85347867012024,
+ 4.8853753,
+ 4.87593680620193,
+ 4.92792874574661,
+ 4.9021178483963,
+ 4.902205,
+ 4.88204687833786,
+ 4.772438482658,
+ 4.89670112729073,
+ 4.88048851490021,
+ 4.87697213888168,
+ 4.8438768,
+ 4.8208911716938,
+ 4.85753103547779,
+ 4.79466319084167,
+ 4.91293653845787,
+ 4.87848825752735,
+ 4.953825,
+ 4.90546524524689,
+ 4.8954002559185,
+ 4.93057484418023,
+ 4.88310919170289,
+ 4.8819123,
+ 4.89844556897879,
+ 4.8803501018524,
+ 4.89420533180237,
+ 4.90738492868036,
+ 4.89644229999999,
+ 4.84374225139618,
+ 4.93466,
+ 4.88519445061684,
+ 4.919684,
+ 4.89332549999995,
+ 4.89448126405478,
+ 4.98621582984924,
+ 4.89441740508482,
+ 4.89473192953028
+ ],
+ "marker": {
+ "color": [
+ 5,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 3,
+ 0,
+ 3,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 5,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 2,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 4,
+ 1,
+ 4,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 2,
+ 4,
+ 2,
+ 4,
+ 5,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 3,
+ 3,
+ 2,
+ 3,
+ 4,
+ 3,
+ 3,
+ 3,
+ 4,
+ 3,
+ 3,
+ 4,
+ 0,
+ 4,
+ 4,
+ 5,
+ 4,
+ 2,
+ 4,
+ 3,
+ 3,
+ 4,
+ 4,
+ 0,
+ 4,
+ 4,
+ 4,
+ 4,
+ 3,
+ 3,
+ 4,
+ 1,
+ 3,
+ 4,
+ 3,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 2,
+ 3,
+ 2,
+ 3,
+ 3,
+ 0,
+ 0,
+ 4,
+ 3,
+ 2,
+ 2,
+ 0,
+ 3,
+ 5,
+ 3,
+ 1,
+ 0,
+ 3,
+ 3,
+ 5,
+ 0,
+ 5,
+ 3,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 0,
+ 4,
+ 3,
+ 4,
+ 4,
+ 3,
+ 3,
+ 3,
+ 0,
+ 4,
+ 5,
+ 3,
+ 3,
+ 4,
+ 1,
+ 5,
+ 4,
+ 4,
+ 3,
+ 3,
+ 0,
+ 4,
+ 3,
+ 2,
+ 0,
+ 3,
+ 3,
+ 4,
+ 2,
+ 4,
+ 0,
+ 3,
+ 4,
+ 3,
+ 4,
+ 5,
+ 4,
+ 5,
+ 5,
+ 3,
+ 5,
+ 0,
+ 3,
+ 2,
+ 5,
+ 3,
+ 5,
+ 3,
+ 4,
+ 2,
+ 5,
+ 5,
+ 3,
+ 3,
+ 3,
+ 5
+ ],
+ "coloraxis": "coloraxis",
+ "size": 12
+ },
+ "mode": "markers",
+ "name": "",
+ "showlegend": false,
+ "subplot": "mapbox",
+ "type": "scattermapbox"
+ }
+ ],
+ "layout": {
+ "coloraxis": {
+ "colorbar": {
+ "title": {
+ "text": "stars"
+ }
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "height": 1000,
+ "legend": {
+ "tracegroupgap": 0
+ },
+ "mapbox": {
+ "center": {
+ "lat": 52.36194237574405,
+ "lon": 4.890813530014372
+ },
+ "domain": {
+ "x": [
+ 0,
+ 1
+ ],
+ "y": [
+ 0,
+ 1
+ ]
+ },
+ "style": "open-street-map",
+ "zoom": 11.5
+ },
+ "template": {
+ "data": {
+ "bar": [
+ {
+ "error_x": {
+ "color": "#2a3f5f"
+ },
+ "error_y": {
+ "color": "#2a3f5f"
+ },
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "bar"
+ }
+ ],
+ "barpolar": [
+ {
+ "marker": {
+ "line": {
+ "color": "#E5ECF6",
+ "width": 0.5
+ },
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "barpolar"
+ }
+ ],
+ "carpet": [
+ {
+ "aaxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "baxis": {
+ "endlinecolor": "#2a3f5f",
+ "gridcolor": "white",
+ "linecolor": "white",
+ "minorgridcolor": "white",
+ "startlinecolor": "#2a3f5f"
+ },
+ "type": "carpet"
+ }
+ ],
+ "choropleth": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "choropleth"
+ }
+ ],
+ "contour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "contour"
+ }
+ ],
+ "contourcarpet": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "contourcarpet"
+ }
+ ],
+ "heatmap": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmap"
+ }
+ ],
+ "heatmapgl": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "heatmapgl"
+ }
+ ],
+ "histogram": [
+ {
+ "marker": {
+ "pattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ }
+ },
+ "type": "histogram"
+ }
+ ],
+ "histogram2d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2d"
+ }
+ ],
+ "histogram2dcontour": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "histogram2dcontour"
+ }
+ ],
+ "mesh3d": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "type": "mesh3d"
+ }
+ ],
+ "parcoords": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "parcoords"
+ }
+ ],
+ "pie": [
+ {
+ "automargin": true,
+ "type": "pie"
+ }
+ ],
+ "scatter": [
+ {
+ "fillpattern": {
+ "fillmode": "overlay",
+ "size": 10,
+ "solidity": 0.2
+ },
+ "type": "scatter"
+ }
+ ],
+ "scatter3d": [
+ {
+ "line": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatter3d"
+ }
+ ],
+ "scattercarpet": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattercarpet"
+ }
+ ],
+ "scattergeo": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergeo"
+ }
+ ],
+ "scattergl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattergl"
+ }
+ ],
+ "scattermapbox": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scattermapbox"
+ }
+ ],
+ "scatterpolar": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolar"
+ }
+ ],
+ "scatterpolargl": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterpolargl"
+ }
+ ],
+ "scatterternary": [
+ {
+ "marker": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "type": "scatterternary"
+ }
+ ],
+ "surface": [
+ {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ },
+ "colorscale": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "type": "surface"
+ }
+ ],
+ "table": [
+ {
+ "cells": {
+ "fill": {
+ "color": "#EBF0F8"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "header": {
+ "fill": {
+ "color": "#C8D4E3"
+ },
+ "line": {
+ "color": "white"
+ }
+ },
+ "type": "table"
+ }
+ ]
+ },
+ "layout": {
+ "annotationdefaults": {
+ "arrowcolor": "#2a3f5f",
+ "arrowhead": 0,
+ "arrowwidth": 1
+ },
+ "autotypenumbers": "strict",
+ "coloraxis": {
+ "colorbar": {
+ "outlinewidth": 0,
+ "ticks": ""
+ }
+ },
+ "colorscale": {
+ "diverging": [
+ [
+ 0,
+ "#8e0152"
+ ],
+ [
+ 0.1,
+ "#c51b7d"
+ ],
+ [
+ 0.2,
+ "#de77ae"
+ ],
+ [
+ 0.3,
+ "#f1b6da"
+ ],
+ [
+ 0.4,
+ "#fde0ef"
+ ],
+ [
+ 0.5,
+ "#f7f7f7"
+ ],
+ [
+ 0.6,
+ "#e6f5d0"
+ ],
+ [
+ 0.7,
+ "#b8e186"
+ ],
+ [
+ 0.8,
+ "#7fbc41"
+ ],
+ [
+ 0.9,
+ "#4d9221"
+ ],
+ [
+ 1,
+ "#276419"
+ ]
+ ],
+ "sequential": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ],
+ "sequentialminus": [
+ [
+ 0,
+ "#0d0887"
+ ],
+ [
+ 0.1111111111111111,
+ "#46039f"
+ ],
+ [
+ 0.2222222222222222,
+ "#7201a8"
+ ],
+ [
+ 0.3333333333333333,
+ "#9c179e"
+ ],
+ [
+ 0.4444444444444444,
+ "#bd3786"
+ ],
+ [
+ 0.5555555555555556,
+ "#d8576b"
+ ],
+ [
+ 0.6666666666666666,
+ "#ed7953"
+ ],
+ [
+ 0.7777777777777778,
+ "#fb9f3a"
+ ],
+ [
+ 0.8888888888888888,
+ "#fdca26"
+ ],
+ [
+ 1,
+ "#f0f921"
+ ]
+ ]
+ },
+ "colorway": [
+ "#636efa",
+ "#EF553B",
+ "#00cc96",
+ "#ab63fa",
+ "#FFA15A",
+ "#19d3f3",
+ "#FF6692",
+ "#B6E880",
+ "#FF97FF",
+ "#FECB52"
+ ],
+ "font": {
+ "color": "#2a3f5f"
+ },
+ "geo": {
+ "bgcolor": "white",
+ "lakecolor": "white",
+ "landcolor": "#E5ECF6",
+ "showlakes": true,
+ "showland": true,
+ "subunitcolor": "white"
+ },
+ "hoverlabel": {
+ "align": "left"
+ },
+ "hovermode": "closest",
+ "mapbox": {
+ "style": "light"
+ },
+ "paper_bgcolor": "white",
+ "plot_bgcolor": "#E5ECF6",
+ "polar": {
+ "angularaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "radialaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "scene": {
+ "xaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "yaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ },
+ "zaxis": {
+ "backgroundcolor": "#E5ECF6",
+ "gridcolor": "white",
+ "gridwidth": 2,
+ "linecolor": "white",
+ "showbackground": true,
+ "ticks": "",
+ "zerolinecolor": "white"
+ }
+ },
+ "shapedefaults": {
+ "line": {
+ "color": "#2a3f5f"
+ }
+ },
+ "ternary": {
+ "aaxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "baxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ },
+ "bgcolor": "#E5ECF6",
+ "caxis": {
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": ""
+ }
+ },
+ "title": {
+ "x": 0.05
+ },
+ "xaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ },
+ "yaxis": {
+ "automargin": true,
+ "gridcolor": "white",
+ "linecolor": "white",
+ "ticks": "",
+ "title": {
+ "standoff": 15
+ },
+ "zerolinecolor": "white",
+ "zerolinewidth": 2
+ }
+ }
+ },
+ "title": {
+ "text": "Hotel Star Ratings in Amsterdam"
+ },
+ "width": 1000
+ }
+ }
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "fig = px.scatter_mapbox(\n",
+ " df_hotels,\n",
+ " lat=\"latitude\",\n",
+ " lon=\"longitude\",\n",
+ " color=\"stars\",\n",
+ " hover_name=\"name\",\n",
+ " hover_data={\"price\": True, \"review_score\": True},\n",
+ " zoom=11.5,\n",
+ " title=\"Hotel Star Ratings in Amsterdam\",\n",
+ ")\n",
+ "fig.update_traces(marker=dict(size=12)) # ← make dots bigger (default is 6)\n",
+ "\n",
+ "fig.update_layout(\n",
+ " mapbox_style=\"open-street-map\",\n",
+ " height=1000,\n",
+ " width=1000\n",
+ ")\n",
+ "\n",
+ "fig.show()\n"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "base",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.13.5"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}