Deep copy of this chart, or nullptr if the concrete type doesn't support it.
<insightdock/chart.h>
virtual
std::unique_ptr<Chart>
clone() const;
All built-in chart types override this. ChartExporter uses it to render supersampled output from a copy through a scaled drawing target, so exporting never mutates the chart you pass in (and concurrent exports of one chart are safe). Custom subclasses should override it the same way: return std::make_unique<MyChart>(*this);. Without an override, supersampled rendering returns an empty buffer and save()/encode() report RenderFailure.