我正在遵循this jsFiddle的代码示例,以便在Highcharts SVG中绘制一个附加表,以便可以在导出图表时将其导出为图像。
我能够绘制所需的表格,但是在导出时,我的额外表格不属于图像,它只是显示图表,好像我没有做任何额外的绘图一样。
我认为这很重要,因为在jsFiddle示例中,我将图例保留为默认状态(水平,居中),并带有负y
值,以诱使Highcharts扩展图表下方的SVG区域为表格留出了空间。但是随后,在绘制表格的过程中,我通过更改它们的tranform: translate()
值来移动各个图例元素。
但是,当我尝试将图表导出到图像中时,图例中的图例又回到了水平位置并居中于图表下方,这向我表明Highcharts实际上并未读取“实时” SVG信息,但是而不是呈现某种缓存版本或其他内容?
我正在使用离线导出,这是由于这种情况造成的吗?
我也在使用highcharts-react-official
,并且我的导入和设置如下:
import Highcharts from 'highcharts';
import HighchartsReact from 'highcharts-react-official';
import Exporting from 'highcharts/modules/exporting';
import OfflineExporting from 'highcharts/modules/offline-exporting';
Exporting(Highcharts);
OfflineExporting(Highcharts);
export default class MyChart extends Component {
// etc
}
此行为与使用highcharts-react-official
有关系吗?
正如评论中所建议的那样,我尝试使用marginBottom
而不是图例的Y负值,以便为SVG底部的表腾出空间,但这并没有改变任何内容,该表仍未导出。
这是我的组件的设置方式。在将数据实际放入图表之前,我尝试包括它在接收和处理数据时所经历的所有不同阶段: