1

はじめに、Jquery-Flot を使用してラジアル グラフをプロットしています。スパイダー グラフを作成するためのプラグインを見つけました。こちらの API を参照してください。

http://www.jumware.com/Includes/jquery/Flot/Doc/JQuery.Flot.spider.html

ポイントを結ぶ線を表示したくないという事実を除いて、すべてうまく機能します。通常:

points: { show: true}, lines: { show: false}

しかし、Spider プラグインを使用すると、この設定が無視されるようです。ここで何か間違ったことをしているのですか、それともこのプラグインを使用するときに行を表示する必要があるのですか?


作業例:

http://jsfiddle.net/WAscC/2/


コード:

function EveryOneSec() {

    var d1 = [[0, 10], [1, 20], [2, 80], [3, 70], [4, 60]];
    var d2 = [[0, 30], [1, 25], [2, 50], [3, 60], [4, 95]];
    var d3 = [[0, 50], [1, 40], [2, 60], [3, 95], [4, 30]];

    var options = {
        series: {
            spider: {
                active: true,
                legs: {
                    data: ["", "", "", "", ""],
                    legScaleMax: 1,
                    legScaleMin: 0.8
                }, spiderSize: 0.9
            }
        }, grid: {
            hoverable: false,
            clickable: false,
            tickColor: "rgba(0,0,0,0.2)",
            mode: "radar"
        }
    };


    data = [{
        label: "",
        data: d1,
        spider: {
            show: true,
            lineWidth: 0
        }
    }, {
        label: "",
        data: d2,
        spider: {
            show: true,
            lineWidth: 0
        }
    }, {
        label: "",
        data: d3,
        spider: {
            show: true,
            lineWidth: 0
        },
        points: { show: true},lines: { show: false }
    }];

    $.plot($("#RadialPlot"), data, options);
}
EveryOneSec();

アップデートワン

任意の数に編集lineWidth: 0, connectionWidth: 0しても、グラフにはまったく影響がないようです。


線ではなく点のみを表示するにはどうすればよいですか?

4

1 に答える 1

2

connection: { width: 0 }スパイダーオプションに追加:

spider: {
   active: true,
   connection: { width: 0 }, // add this line
   legs: {
       data: ["", "", "", "", ""],
       legScaleMax: 1,
       legScaleMin: 0.8
   },
   spiderSize: 0.9
}

ドキュメントには、オプションは次のようになっている必要があると記載されていますが、実際のプラグインconnectionWidth: 0のソースからわかるように、変更されているようです。

function drawspiderConnections(ctx,cnt,serie,c,fill) {
    var pos,d;
    ctx.beginPath();
    ctx.lineWidth = serie.spider.connection.width; // this is the line

    // etc.

}
于 2010-07-16T06:33:16.477 に答える