Currently CSV Chart expects all characteristics of a chart to be included within the csvdata tag, such as the type of chart to be created, the labels, the legends, and the actually data to be used in the chart. To prepare for CSV Chart to start taking advantage of other charting libraries (because the currently used library is coming close to end of support ...), it appears that a distinction should be made between at least the data to be included in the chart, and the various other characteristics of the chart.
A possible approach to be considered is to come up with something similar to the so called frx syntax in the forena module, as illustrated in this real world sample. More specifically this part included in it:
<svg frx:group="{week}" frx:key="{week}" frx:renderer="FrxSVGGraph" frx:legend_position="bottom right 0 -10" frx:type="MultiLineGraph" frx:legend_entries_1="Tickets" frx:legend_entries_2="Target" frx:legend_entries_3="Marketing" frx:series_1="{tickets}" frx:series_2="{tickets_target}" frx:series_3="{tickets_mktg}" frx:colour_1="blue" frx:colour_2="red" frx:colour_3="transparent" frx:marker_colour_1="blue" frx:marker_colour_2="red" frx:marker_colour_3="black" frx:marker_size_1="5" frx:marker_size_2="5" frx:marker_size_3="7" frx:marker_type_1="circle" frx:marker_type_2="circle" frx:marker_type_3="diamond"/>
Many of the frx-options in the above sample relate to the SVG Graph library, but it's obvious that there are quite some similarities already in the current csvdata details (such as the type), while there are also quite a few synonyms (such as the legend_entries_1, etc).
By aligning a refined csvdata syntax towards this frx-syntax, it will probably become straight forward to just "call" forena (project dependency) for transforming the actual data into (e.g.) a chart created (via forena) using the SVG Graph library.