I currently have a Recharts component that I would like to export as a PNG file.
<LineChart
id="currentChart"
ref={(chart) => (this.currentChart = chart)}
width={this.state.width}
height={this.state.height}
data={this.testData}
margin={{ top: 5, right: 30, left: 20, bottom: 5 }}
>
<XAxis dataKey="name" />
<YAxis />
<CartesianGrid strokeDasharray="3 3" />
<Tooltip />
<Legend />
<Line type="monotone" dataKey="pv" stroke="#8884d8" activeDot={{ r: 8 }} />
<Line type="monotone" dataKey="uv" stroke="#82ca9d" />
</LineChart>;
but I'm unsure if this is directly supported by the library.
I have an idea that involves using a canvas and a 2D rendering context to get me close to a solution, as outlined on MDN
However, I'm not sure of a generic way to render an HTML element (or React Component) as a canvas to implement this solution.
I might be going about this all wrong, and I would appreciate the correction!