78,335 properties
0 phones
0 emails
0 for sale
46 results · Page 1/1
All (78,335) Self-Storage (6,623) Mobile Home Parks (7,641) Car Washes (9,819) Laundromats (7,714) RV Parks (22,383) Marinas (5,509) Budget Motels (10,145) Dry Cleaners (8,419)
Map:

Bush Dry Cleaners

2

Sioux City, IA · 1415 Morningside Avenue

Dry Cleaners
Phone

Artistic Cleaners

3

Dubuque, IA · 107 Locust Street

Dry Cleaners
Phone

HWY 61 Dry Cleaners

3

Maquoketa, IA · 108 Jones Street

Dry Cleaners
Phone

French Way Cleaners

3

IA

Dry Cleaners

L&K Laundromat

3

IA

Dry Cleaners

Mayfair

3

IA

Dry Cleaners

Victoria Cleaners

3

IA · 5931 Ashworth Road

Dry Cleaners

Crown Cleaners

3

IA · 5918 E P True Parkway

Dry Cleaners

Victoria Cleaners

3

IA · 2180 Northwest 156th Street

Dry Cleaners

Victoria Cleaners

3

West Des Moines, IA · 650 South 50th Street

Dry Cleaners

Franklin Park Cleaners

3

Des Moines, IA · 5804 Franklin Avenue

Dry Cleaners
Phone

Camelot Cleaners

3

IA

Dry Cleaners

Executive Cleaners

3

IA

Dry Cleaners

Terrace Hill Plaza Cleaners

3

Ottumwa, IA · 615 Pennsylvania Avenue

Dry Cleaners

Iris City Cleaners

3

IA

Dry Cleaners

Nature's Way Cleaners

3

IA

Dry Cleaners

Max I Walker Cleaners

3

IA

Dry Cleaners

Fashion Cleaners

3

IA

Dry Cleaners

Executive Cleaners

3

Altoona, IA · 301 Center Place Southwest

Dry Cleaners

Mayfair Cleaners

3

Ames, IA · 508 Lincoln Way

Dry Cleaners
Phone

Village Cleaners

3

IA

Dry Cleaners

Max I. Walker

3

IA · 16815 Q Street

Dry Cleaners

Varsity Cleaners

3

IA

Dry Cleaners

Burke Cleaners

3

IA

Dry Cleaners

Jerry's Cleaners

3

Grinnell, IA · 616 6th Avenue

Dry Cleaners

Huxley Cleaners & Laundromat

3

Ankeny, IA · 308 South Ankeny Boulevard

Dry Cleaners

Ankeny Dry Cleaners

3

Ankeny, IA · 122 South Ankeny Boulevard

Dry Cleaners

Plaza Cleaners

3

IA · 3816 70th Street

Dry Cleaners

Presto Cleaners

3

Des Moines, IA · 863 42nd Street

Dry Cleaners
Phone

Dixie's Campus Cleaners

3

IA · 3401 University Avenue

Dry Cleaners

Victoria Cleaners

3

IA · 2720 Grand Avenue

Dry Cleaners

French Way Cleaners

3

Des Moines, IA · 3604 Ingersoll Avenue

Dry Cleaners

DeeLuxe DryCleaners

3

Richland Center, IA · 711 South Church Street

Dry Cleaners
Phone

French Way Cleaners

3

West Des Moines, IA · 835 Grand Avenue

Dry Cleaners

Victoria Cleaners

3

West Des Moines, IA · 900 Grand Avenue

Dry Cleaners

Burke Cleaners

3

IA

Dry Cleaners

Executive Dry Cleaners

3

Ottumwa, IA · 302 Bardell Street

Dry Cleaners

Max I Walker

3

IA

Dry Cleaners

King's Gard Cleaners

3

Cedar Rapids, IA · 3100 1st Avenue East

Dry Cleaners

Citywide Cleaners

3

Cedar Rapids, IA · 3102 Mount Vernon Road Southeast

Dry Cleaners

Bradley's Cleaners

3

IA

Dry Cleaners

Burke Cleaners

3

IA

Dry Cleaners

Supreme Cleaners

3

Creston, IA · 408 West Montgomery Street

Dry Cleaners
Phone

A1 Uniforms

3

IA

Dry Cleaners

Concord Custom Cleaners

3

IA

Dry Cleaners

Fashion Touch Dry Cleaners

3

IA

Dry Cleaners
// 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 78,335+ businesses
$500/yr Get Access