When InvokeLoadData is set to AfterPageLoad, each RadHtmlChart loads through a separate asynchronous callback after the page is rendered. Because of that, one chart can render correctly while others remain empty if their callback data requests fail or return unusable data.
The most common causes are mismatched field names (DataFieldY / DataLabelsField), non-numeric values returned for DataFieldY, or stored procedures returning no rows due to filters.
For RadHtmlChart, numeric series fields should come from numeric SQL types (int, decimal, etc.), not string values. A runnable Northwind sample with three charts and stored-procedure data sources confirms this works when schema and types are consistent across all procedures.
As a quick diagnostic, temporarily set InvokeLoadData to OnPageLoad; if charts then render, the issue is specifically in the async callback stage.