You can achieve this with a few custom queries:
Swap out the XX with your orders channel id
Top Customers (most orders)
{exp:query sql="SELECT COUNT(*) AS orders, screen_name
FROM exp_channel_titles AS t
JOIN exp_channel_data AS d
ON d.entry_id = t.entry_id
JOIN exp_members AS m
ON t.author_id = m.member_id
WHERE t.channel_id = XX
AND t.status = 'open'
GROUP BY author_id
ORDER BY count DESC" limit="10"}
<li>{screen_name} ({orders})</li>
{/exp:query}
Swap out the XX with your orders channel id, and YY with your order_total field id
Top Customers (most orders)
{exp:query sql="SELECT SUM(field_id_YY) AS total, username
FROM exp_channel_titles AS t
JOIN exp_channel_data AS d
ON d.entry_id = t.entry_id
JOIN exp_members AS m
ON t.author_id = m.member_id
WHERE t.channel_id = XX
AND t.status = 'open'
GROUP BY author_id
ORDER BY total DESC" limit="10"}
<li>{screen_name} ({exp:cartthrob:view_formatted_number number="{total}"})</li>
{/exp:query}