parseChartKeys_fig compares chart['type'].title() with all members of go to get the trace type. However, for a 3d scatter:
chart['type'].title() is Scatter3D (capital D) and getmembers(go, isclass)[51][0] is Scatter3d (lower case d), so it cannot find the plot type.
Suggest
if i.lower() == chart['type'].lower(): realChart = y
parseChartKeys_fig compares chart['type'].title() with all members of go to get the trace type. However, for a 3d scatter: chart['type'].title() is Scatter3D (capital D) and getmembers(go, isclass)[51][0] is Scatter3d (lower case d), so it cannot find the plot type. Suggest
if i.lower() == chart['type'].lower(): realChart = y