How create a interactive map that get one result with selecting places with "Lasso Select"?

I’am workking with Python in Jupyterlab and I have a DataFrame where each row is one property and the columns that I have are: ID of the property, name, sell prices of the property, area, latitude, longitude, direction and seller (I have more information but these are the most importans). With this information I want to create a interactive map (where the country will be Colombia and I have also different cities of it) that with the help of “Lasso Select” I want to select an area of the map where some propertys are, and as result I expect the average of the sell prices of the selected properties.

I know that this is possible because I’m looking this dashboard: US Opioid Epidemic but to be honest i couldn’t understand it. For now my specifics question are:

  1. How I can create a interactive map with the coordenates of the properties of my dataset? i.e A interactive map of colombian cities, for this I’am thinking in create a filter or like a drop down list with the cities that change the map if I change the selected city (example: Medical Provider Charges)
  2. With the help of “Lasso Select” how i select some properties of the interactive map and get as result the average of the sell prices of that selection?
  3. How I get one DataFrame with specific columns as: ID, Name, Direction , Area, Sell prices and Seller of the properties that i selected with Lasso select in the map. It´s importan to say that my objective with this DataFrame is have the specific selection data where I get out the average of my question 2.

I know my question doesn’t have relation with some problem with code, but I really need help in how I start to create something like this, any information you have will be very helpful. My final objective with this is create a Dashboard with all this.