Cut 1 lemon in half, and squeeze into a bowl of cold water; add the rinds to the water. Squeeze 1/2 cup juice from 2 lemons; set juice and rinds aside. Cut the remaining lemon lengthwise into 1/4-inch-thick slices, and set aside
Prepare the artichoke hearts: Working with 1 artichoke at a time, snap off tough outer leaves until half-green-half-yellow leaves are exposed. Using a chef's knife, cut off dark-green top until just pale part remains. Using a paring knife, peel dark-green layer from base and stem; trim stem. Scrape out purple leaves and fuzzy choke using a spoon, and discard. Halve artichoke lengthwise. Rub artichoke with reserved lemon rinds as you work. Cut artichoke heart into 1/4-inch-thick slices, and transfer to lemon water.
Put onion, fennel, coriander seeds, reserved lemon juice and slices, 1 1/2 teaspoons salt, 1/2 cup water, and the olive oil into a large saute pan or deep pot. Drain artichokes, and add to pan; stir. Place a piece of parchment directly on mixture; cover pan with foil or lid. Bring to a boil. Reduce heat, and gently simmer, stirring occasionally, until artichokes are tender, about 15 minutes. Remove from heat, and uncover. Season with salt and pepper. Set aside.
Season both sides of fish with salt. Heat 2 tablespoons canola oil in a large skillet over high heat until very hot but not smoking. Add 2 fillets. Reduce heat to medium-high, and cook fillets, without moving them, until bottoms are golden brown, 4 to 5 minutes. Carefully flip; cook until fish is opaque and flakes easily, 2 to 3 minutes more. Transfer each to a plate; tent with foil. Repeat with remaining tablespoon canola oil and 2 fillets. Spoon 1/2 cup artichoke mixture over each fillet. Garnish with basil. (Remaining artichoke mixture can be refrigerated in an airtight container up to 1 week.)