2015-02-19 3 views
2

У меня есть небольшая проблема с моим экспортом HighCharts.Экспорт с высоким качеством отображения отображается неправильно

Основная проблема заключается в том, что диаграмма, которую я экспортирую, теперь экспортируется должным образом, главным образом, на этикетках.

Как это должно выглядеть: http://s22.postimg.org/5d1oh16y9/image_1_proper.png

Как это выглядит как экспорт SVG: http://s9.postimg.org/71qijdhhr/image_1_svg.png

Как это выглядит как экспорт PNG: s27.postimg.org/5fq5tfgdv/image_1_png.png

Я попытался использовать chart.redraw() и экспортировал его с помощью chart.exportChart(), и он дал мне те же результаты

Чтобы отобразить th е метки я использую: plotOptions.series.dataLabels.formatter

settings.plotOptions.series.dataLabels.formatter=function(){ 
     if(this.point.z!=0.3){ 
      return "<a style='position:relative;top:10px;text-align:center; text-shadow: none; color:black;'>"+this.point.name+"</a>"; 
     } 
    } 

Любая помощь будет оценена

TNX

+2

Скорее всего вы установили опцию 'useHTML' в значение true, которая не поддерживается при экспорте: [источник] (http://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting). Для экспорта сервера требуется только SVG, а не HTML. –

+0

Okey да, но это не решило мою проблему правильно. Теперь мой оригинал выглядит как SVG, поэтому это означает, что мои ярлыки не отображаются. Есть ли способ сделать их? –

+2

[Разрешить перекрытие] (http://api.highcharts.com/highcharts#plotOptions.series.dataLabels.allowOverlap) для данныхLabels? –

ответ

0

Как было отмечено Paweł Fus [1][2], вы должны также установить как useHTML и allowOverlap к true:

settings.plotOptions.series.dataLabels = { 
    useHTML: true, 
    allowOverlap: true, 
    formatter: function() { 
     if(this.point.z!=0.3){ 
      return "<a style='position:relative;top:10px;text-align:center; text-shadow: none; color:black;'>"+this.point.name+"</a>"; 
     } 
    } 
} 
Смежные вопросы