2013-09-24 10 views
0

지난 12 개월 동안 데이터를 표시해야하는 jqPlot의 꺾은 선형 차트를 사용하고 있습니다. 이번 달이 9 월이면 X 축은 2012 년 8 월에서 2013 년 9 월까지를 표시합니다. 그러나 2013 년 1 월부터 시작하는 데이터가 있으므로 차트 중간에서 가장 최근에 사용 가능한 월 데이터까지 선이 시작됩니다.jqPlot 꺾은 선형 차트의 포인트 레이블이 잘못된 위치에 표시됩니다.

문제 : 줄이 올바른 위치에서 시작되었지만 줄거리가 적절하게 이동하지 않았습니다. 선이 올바르게 표시되지만 pointable은 차트의 시작 부분부터 표시됩니다.

enter image description here

질문 : 어떻게 대신 점에 있어야 pointables를 이동할 수 있습니다?

업데이트은 : 라인 jqPlot 자신의 버그가 수정 될 때까지 내가 해결 방법을 발견 (issue log)

var json= {  
     title: '' 
     ,stackSeries: false 
     ,captureRightClick: true  
     ,seriesDefaults:{  
      //renderer:$.jqplot.BarRenderer  
      rendererOptions: {        
       highlightMouseDown: true        
      }  
      ,pointLabels: { 
       show: true 
       ,formatString: '%.1f' 
       ,seriesLabelIndex:null 
       ,hideZeros:true 
      } 
      ,markerOptions: { 
       show: true,  

       style: 'filledCircle', 
      } 
     } 
      ,series: [ 
       {label: 'A', color:'#FDC12E'} 
       ,{label: 'B', color:'#C9198D'} 
       ,{label: 'C', color:'#56B9F9'} 
       ,{label: 'D', color: '#F1683C'} 
            ,{label: 'E', color: '#000000'} 
      ] 

      ,axes: {  
       xaxis: {   
        tickOptions:{angle:-45} 
        ,tickRenderer: $.jqplot.CanvasAxisTickRenderer 
        ,renderer: $.jqplot.CategoryAxisRenderer 
        ,ticks: [] 
       },  
       yaxis: { 
        labelRenderer: $.jqplot.CanvasAxisLabelRenderer 
        ,padMin: 0 
        ,pad: 1.05 
        ,min: 0 
        ,tickOptions:{formatString: '%.0f'}, 
       } 
      }  
      ,legend: { 
       show: true 
       ,location: 's' 
       ,placement: 'outsideGrid' 
      } 
      ,highlighter:{ 
       show: true 
       ,tooltipLocation: 's' 
       ,yvalues: 2 
       ,bringSeriesToFront:true 
       ,showMarker:false 
       ,tooltipAxes: 'y' 
       ,formatString: "%n%s" 
      } 
      ,cursor:{ 
       show: true 
       ,zoom:true 
       ,showTooltip:false 
       ,constrainZoomTo: 'y' 
      } 
      ,grid:{ 
       background: '#f8f8f8' 
      }    

답변

0

jqPlot에 문제가 알려진 것 같다. 명백하게 breakOnNull: trueseriesDefaults을 추가하면 문제가 해결됩니다. 이 값은 pointLabels 또는 JSON 부분의 highlighter에 사용할 수 있습니다.

+0

그렇지 않으면 xaxis의 최소값 및/또는 최대 값을 지정할 수 있습니다. [두 번째 예는 여기에 있습니다] (http://www.jqplot.com/tests/date-axes.php) – AnthonyLeGovic

+0

최대/최대 값이 두렵습니다 null 값으로 인해 작동하지 않습니다. – shaz

+0

그래서 데이터를 스캔하고 null 값을 제외한 최소값과 최대 값을 유지하는 그래프를 그리기 전에 사전 처리를 할 수 있습니다 – AnthonyLeGovic

관련 문제