49,013 properties
0 phones
0 emails
0 for sale
3,500 results · Page 17/70
All (49,013) Self-Storage (6,315) Mobile Home Parks (7,982) Car Washes (7,857) Laundromats (5,362) RV Parks (8,082) Marinas (3,500) Budget Motels (9,891) Mailbox / Pack & Ship (24)
Map:

Harbor View Marina

3

Lorton, VA · 10613 Greene Drive

Marinas
Phone

Duffy Creek Marina

3

MD

Marinas
Phone Email

Twin Oaks Marina

3

Deale, MD · 511 Deale Road

Marinas

Nightingale Marina

3

MD · 101 Monroe Bay Avenue

Marinas
Phone

Tome's Landing Marina

3

Port Deposit, MD · 1000 Rowland Drive

Marinas
Phone Email

Captain Bob's Marina

3

MD

Marinas

Parkers Marina

3

MD · 1004 Monroe Bay Avenue

Marinas
Phone

The Wharf Marina

3

Washington, DC · 650 Wharf Street Southwest

Marinas
Phone Email

High Point Marina

3

MD

Marinas

Anna Point Marina

3

MD

Marinas
Phone Email

Hunters Landing

3

MD

Marinas
Phone

Sturgeon Creek Marina

3

Spotsylvania Courthouse, VA · 5107 Courthouse Road

Marinas
Phone Email

Lake Anna Marina

3

MD

Marinas
Phone Email

Machodoc Creek Marina

3

MD

Marinas
Phone Email

District Yacht Club

3

MD

Marinas
Email

Fort Washington Marina

3

MD

Marinas
Phone Email

North Shore Community Marina

3

Pasadena, MD · 401 Edgewater Road

Marinas
Phone

Broad Creek Marina

3

Pasadena, MD · 380 North Shore Road

Marinas
Phone

Town river marina

3

Quincy, MA · 674 Southern Artery

Marinas
Phone Email

Kingman's Yacht Center

3

Cataumet, MA · 1 Shipyard Lane

Marinas
Phone

Bristol Marine

3

MA

Marinas

Courageous Sailing

3

MA

Marinas

Plymouth Yacht Club

3

Plymouth, MA · 34 Union Street

Marinas
Phone

Riverfront Marina

3

MA

Marinas
Phone Email

Stanley's Boat Yard

3

Barrington, RI · 25 Barton Avenue

Marinas
Phone Email

Goodwin Creek Marina

3

MA

Marinas
Phone Email

Boston Yacht Haven

3

MA

Marinas
Phone Email

Boston Sailing Center

3

MA

Marinas

Boston Waterboat Marina

3

MA

Marinas

Charlestown Marina

3

MA

Marinas
Phone Email

Sail Newport

3

MA

Marinas

Sandwich Marina

3

MA

Marinas
Phone Email

Coasters Harbor Island Marina

3

MA

Marinas
Phone Email

Scituate Marine Park Marina

3

MA

Marinas

Cole Parkway Marina

3

MA

Marinas

Mill Wharf Marina

3

MA

Marinas
Phone

Scituate Harbor Yacht Club

3

MA

Marinas
Phone

Scituate Boat Club

3

MA

Marinas

Scituate Harbor Marina

3

MA

Marinas

Hawthorne Cove Marina

3

MA

Marinas
Phone Email

Fan Pier Marina

3

MA

Marinas
Phone Email

The Marina at Amebury Point

3

MA

Marinas
Phone Email

Marina at Hatter's Point

3

MA

Marinas
Phone

Allen Harbor Marina

3

MA

Marinas

Quonset Davisville Navy Yacht Club

3

MA

Marinas
Phone

Safe Harbor Allen Harbor

3

MA

Marinas
Phone Email

Ryder's Cove Boat Yard

3

MA

Marinas
Phone

Boating on the Thames

3

MA

Marinas
Phone

Otter Creek Marina

3

La Salle, MI · 6305 Lakeview Avenue

Marinas
Phone

Gore Bay Marina

3

MI

Marinas
Phone Email
← Prev 17 / 70 Next →
// Heat map modes // mapPoints format: [id, lat, lon, category, valuation, data_score, motivated_score] let heatLayer = null; let circleLayer = null; let currentMode = 'markers'; function clearOverlays() { if (heatLayer) { map.removeLayer(heatLayer); heatLayer = null; } if (circleLayer) { map.removeLayer(circleLayer); circleLayer = null; } } function setMapMode(mode) { currentMode = mode; clearOverlays(); // Update button states document.querySelectorAll('.map-mode-btn').forEach(b => b.classList.remove('active')); document.getElementById('btn-' + mode).classList.add('active'); if (mode === 'markers') { markers.addTo(map); return; } map.removeLayer(markers); if (mode === 'density') { // Pure density heatmap const pts = mapPoints.filter(p => p[1] && p[2]).map(p => [p[1], p[2], 1]); heatLayer = L.heatLayer(pts, {radius: 20, blur: 15, maxZoom: 10, max: 5, gradient: {0.2: '#ffffb2', 0.4: '#fd8d3c', 0.6: '#f03b20', 0.8: '#bd0026', 1: '#800026'} }).addTo(map); } else if (mode === 'valuation') { // Circle markers colored by valuation circleLayer = L.layerGroup(); const maxVal = Math.max(...mapPoints.map(p => p[4]).filter(v => v > 0)) || 1; mapPoints.filter(p => p[1] && p[2] && p[4] > 0).forEach(p => { const ratio = Math.min(p[4] / maxVal, 1); const r = Math.round(ratio * 255); const g = Math.round((1 - ratio) * 200); const color = `rgb(${r}, ${g}, 50)`; const radius = 4 + ratio * 10; L.circleMarker([p[1], p[2]], { radius: radius, fillColor: color, color: '#fff', weight: 1, fillOpacity: 0.7 }).bindPopup(`$${(p[4]/1000).toFixed(0)}K`).addTo(circleLayer); }); circleLayer.addTo(map); } else if (mode === 'quality') { // Circle markers colored by data_score circleLayer = L.layerGroup(); mapPoints.filter(p => p[1] && p[2]).forEach(p => { const score = p[5] || 0; const ratio = score / 10; // Green = high, Red = low const r = Math.round((1 - ratio) * 255); const g = Math.round(ratio * 200); const color = `rgb(${r}, ${g}, 50)`; L.circleMarker([p[1], p[2]], { radius: 3 + ratio * 5, fillColor: color, color: '#fff', weight: 0.5, fillOpacity: 0.6 }).addTo(circleLayer); }); circleLayer.addTo(map); } else if (mode === 'motivated') { // Heat map weighted by motivated score const pts = mapPoints.filter(p => p[1] && p[2] && p[6] > 0).map(p => [p[1], p[2], p[6] / 100]); heatLayer = L.heatLayer(pts, {radius: 25, blur: 20, maxZoom: 10, max: 1, gradient: {0.2: '#fff7bc', 0.4: '#fec44f', 0.6: '#fe9929', 0.8: '#d95f0e', 1: '#993404'} }).addTo(map); } }
🔒
Unlock owner contacts for 55,000+ properties
Get Access