2012-10-22 32 views
5

Tôi có dữ liệu lô với jqPlot sử dụng logAxisRenderer để có hai trục lôgarit.Thay đổi thang đo trục bằng LogAxisRenderer

Mọi thứ đều tốt, ngoại trừ hai vấn đề:

  1. jqPlot tạo ra rất nhiều không gian trống giữa 0 và 1.

  2. Có hai số không trên trục x, kể từ khi tôi định dạng số tới "% 'i" (một cho 0,0 và một cho 0,5).

Tôi đã cố sử dụng min: 1 và max: 100000 để ẩn không gian trống và số không. Nhưng điều này không hiệu quả. Mảng kết quả không có dòng và tất cả các nhãn trục x nằm trên cùng một điểm ở phía bên trái của trục.

Đây là mã tôi sử dụng để tạo ra âm mưu này:

$.jqplot(divId, [ line ], { 
    title : title, 
    series:[{showMarker:false}], 
    axes : { 
     xaxis : { 
      label:'Users', 
      renderer : $.jqplot.LogAxisRenderer, 
      tickOptions:{ 
       tickDistribution: "power", 
       formatString: "%'i" 
      }, 
      labelRenderer: $.jqplot.CanvasAxisLabelRenderer, 
     }, 
     yaxis : { 
      label:'Frequency', 
      renderer : $.jqplot.LogAxisRenderer, 
      tickOptions:{ 
       tickDistribution:"power", 
       formatString: "%'i" 
      }, 
      labelRenderer: $.jqplot.CanvasAxisLabelRenderer, 
     }, 
    }, 
}); 

Trả lời

2

Bạn có thể sử dụng vũ lực tick để giải quyết vấn đề này:

$.jqplot(divId, [ line ], { 
    title : title, 
    series:[{showMarker:false}], 
    axes : { 
     xaxis : { 
      label:'Users', 
      renderer : $.jqplot.LogAxisRenderer, 
      ticks: [1, 10, 100, 1000, 10000], 
      tickOptions:{ 
       tickDistribution: "power", 
       formatString: "%'i" 
      }, 
      labelRenderer: $.jqplot.CanvasAxisLabelRenderer, 
     }, 
     // ... 
    }, 
}); 

này không thực sự giải quyết vấn đề của bạn một cách tổng quát , nhưng nó giúp. Đối với tôi (jqPlot 1.0.4r1121), cài đặt "min: 1" sẽ dẫn đến hành vi bạn mô tả. Cài đặt cả hai "min: 1" và "max: 10000" hoạt động cho tôi nhưng không đặt các dấu phân phối điện nhưng thậm chí cả các khoảng cách đều nhau.

Các vấn đề liên quan