2016-08-31 3 views
0

jqPlot을 사용하여 분산 형 플롯에 데이터 세트를 표시합니다. 데이터 세트에는 반복되는 값이 있습니다. 그래프의 한 위치에 여러 데이터 요소가 있다는 사실을 나타내는 방법이 있습니까? 아마도 포인트 마커를 더 커지면 될까요? 또 다른 종류의 그래프를 사용해야합니까?jqPlot에서 동일한 값을 갖는 여러 데이터 포인트 표현

여기에 분산 플롯을위한 자바 스크립트 코드가 있습니다.

var qr=[[1,5],[4,5],[6,5],[4,5],[0,5],[4,5],[6,5],[4,5]]; 
var gr_html = $.jqplot('par_sca_div', [qr], { 
       seriesDefaults:{ 
        showLine:false, 
        markerRenderer: $.jqplot.MarkerRenderer, 
        markerOptions: { 
         size: 5 
        } 
       }, 
       series:[{ 
        markerOptions: { 
        style: 'circle', 
        size:5, 
        }, 
       }], 
       axes:{ 
        xaxis:{ 
        label:'Score', 
        }, 
        yaxis:{ 
        renderer:$.jqplot.canvasTextRenderer, 
        label:'Rate', 
        labelRenderer: $.jqplot.CanvasAxisLabelRenderer, 
        labelOptions:{ 
         fontSize: '10pt' 
        }, 
        }, 
       } 
     }); 

답변

1

pointLabels plugin을 사용하고 레이블에 동일한 포인트의 양을 반영하십시오. 당신의 일련의 포인트 라벨을

var qr=[[1,5, null],[4,2, null],[6,5,'2'],[4,5,'3'],[0,5,null],[4,5,'3'],[6,5,'2'],[4,5,'3']];

및 수 :

은 배열에 레이블을 추가

다음
series:[{ 
    pointLabels:{ 
    show: true, 
}, 

은 상기와 작업 jsfiddle 예이다.

원본 배열에 레이블을 동적으로 추가하는 알고리즘은 원래 배열을 반복하고 점과 반복 횟수를 나타내는 행렬을 만들 수 있습니다. 예를 들어

는 :

[4,5]3pointMatrix[4][5] 값으로 표현된다.

그런 다음 다시 배열을 반복하고 행렬을 사용하여 원래의 배열에 해당 지점 레이블 값을 추가하십시오.

+0

이 접근 방식을 제안 해 주셔서 감사합니다. 저에게 도움이되었습니다. pointMatrix [4] [5] [0] = "John"에서와 같이 pointMatrix [4] [5]에 각 반복 점에 대한 고유 정보를 저장했습니다. – user1072910