การหมุนเวียนเครื่องหมายใน Highchart

มีวิธีใดที่จะหมุนเครื่องหมายแต่ละอันด้วยมุมที่ต่างกันหรือไม่?

สมมติว่า ในตัวอย่างต่อไปนี้ ในซีรีส์ที่ 1 เครื่องหมายรูปภาพควรหมุนระดับ hv (30, 90) และในซีรีส์ที่ 2 (150, 60) ตามลำดับ

HTML

<script src="http://code.highcharts.com/highcharts.js"></script>

<div id="container" style="height: 400px"></div>

จส

$(function () {
    $('#container').highcharts({
        chart: {
        },
        xAxis: {
            minPadding: 0.05,
            maxPadding: 0.05
        },

        series: [{
            data: [
                {
                y: 29.9,
                    x:0,
                   marker: {
                    symbol: 'url(http://www.highcharts.com/demo/gfx/snow.png)'
                }
            }, 
                {
                y: 71.9,
                    x:1,
                   marker: {
                    symbol: 'url(http://www.highcharts.com/demo/gfx/snow.png)'
                }
            },  
                [3, 106.4]
            ]
        },
                {
            data: [
                {
                y: 60,
                    x:0,
                   marker: {
                    symbol: 'url(http://www.highcharts.com/demo/gfx/snow.png)'
                }
            }, 
                {
                y: 25,
                    x:1,
                   marker: {
                    symbol: 'url(http://www.highcharts.com/demo/gfx/snow.png)'
                }
            },  
                [3, 90]
            ]
        }]
    });
});

ตัวอย่างโค้ด


person shaaaa    schedule 27.08.2013    source แหล่งที่มา
comment
ใช้สิ่งนี้ (//jsfiddle.net/gvTWf/1/) อาจเป็นประโยชน์สำหรับคุณ   -  person    schedule 27.08.2013
comment
แซนดี้เห็นซอนั้นแล้ว ไม่มีประโยชน์ในตัวอย่าง jsfiddle ของฉัน... อย่างไรก็ตาม ขอบคุณ   -  person shaaaa    schedule 27.08.2013
comment
คุณช่วยอธิบายคำถามของคุณด้วยคำอธิบายเพิ่มเติมอีกหน่อยได้ไหม   -  person    schedule 27.08.2013


คำตอบ (1)


น่าเสียดายที่ยังไม่รองรับอย่างเป็นทางการ แต่คุณสามารถใช้วิธีแก้ไขปัญหาชั่วคราว ซึ่งจะวนซ้ำแต่ละจุดและหมุนด้วยฟังก์ชัน attr() มันไม่สมบูรณ์แบบ แต่คุณสามารถใช้การแปลเพื่อย้ายเครื่องหมายได้

http://jsfiddle.net/yd8hV/2/

 $.each(chart.series[0].data,function(i,point){

        if(!point.angle)
            point.angle = 0;

        this.graphic.attr({
            rotation:point.angle
        })
        .translate(10,-10);

    });
person Sebastian Bochan    schedule 28.08.2013
comment
สิ่งนี้ช่วยได้ :) ขอบคุณเซบาสเตียน :) - person shaaaa; 29.08.2013
comment
มีการอัปเดตที่ใช้ได้กับเวอร์ชันปัจจุบันหรือไม่? ฉันไม่เห็นผลกระทบใด ๆ ต่อการหมุนสัญลักษณ์ในตัวอย่างนี้ - person jlbriggs; 16.07.2015
comment
คุณสามารถลองใช้วิธี .css() และเช่น 'transform': 'rotate(7deg)' - person Sebastian Bochan; 20.07.2015