문제

DOJO 차트를 사용하여 열 차트를 작성했습니다. 나는 지금까지 매우 감동했지만 로그 y 축이 필요하다고 결정했습니다. 내가 지금까지 지원되는 것처럼 보이지는 않지만 블로그 항목 그것이 어느 시점에서 계획되었다는 것을 암시합니다.

지금은 그것이 가능하다는 것을 알고 있습니까? 그렇지 않다면, 나는 강화를 직접 작성하는 것을 기쁘게 생각합니다. 그래서 누군가가 어디서부터 시작 해야할지에 대한 팁이 있다면 감사하게받을 것입니다. 아직 새로운 스케일 유형을 구현 한 경우는 아직 소스를 파기하는 데 많은 시간을 소비하지는 않았습니다.

고마워요, 마틴.

도움이 되었습니까?

해결책

dojox.gfx는 여전히 로그 축이 없습니다.

업데이트: 이를 수행하는 한 가지 방법은 로그 축을 따라 데이터를 다시 매핑하고 사용자 지정 레이블과 함께 선형 축을 사용하는 것입니다. 예를 들어:

// we will transform our 'x' to a decadic logarithmic scale

var LOG10 = Math.log(10);

var data = [...]; // my data of {x, y}
var transformedData = dojo.map(data, function(value){
  return {
    x: Math.log(value.x) / LOG10,
    y: value.y // 'y' is unchanged
  };
});

// ...

// add the axis and the data
chart.addAxis("x", {
  natural: true,
  includeZero: true,
  // our logarithmic labels
  labels: [
    {value: 0, text: "1"},
    {value: 1, text: "10"},
    {value: 2, text: "100"},
    {value: 3, text: "1000"},
    {value: 4, text: "10^4"},
    {value: 5, text: "10^5"},
    {value: 6, text: "10^6"},
    {value: 7, text: "10^7"},
    {value: 8, text: "10^8"},
    {value: 9, text: "10^9"}
  ]
});
chart.addSeries("my data", transformedData);

// ...

그런 일이 트릭을 할 것입니다. 다른 옵션은 라벨링 함수를 사용하여 "로그"라벨을 자동으로 생성하는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top