동일한 차트에 두 개의 데이터 시리즈를 표시하려고합니다. 첫 번째 시리즈 (즉, 인용문 수)는 양의 정수 (0) 만 포함 할 수 있습니다. 두 번째 시리즈 (예 : 판매액)에는 양수 및 음수 float 값이 포함될 수 있습니다 (궁금한 점이 있다면 음수 값은 신용 노트 발행으로 인해 발생합니다).하이 차트 - 여러 축을 표시 할 때 음수 값 문제
첨부 된 이미지에서 알 수 있듯이 두 번째 시리즈에 음수 값이 포함되어 있으면 두 개의 데이터 시리즈 중 0 점 "기준선"이 더 이상 공유되지 않습니다. 우리는 Y의 "분"옵션을 설정하려고했습니다
은 0 축,하지만 우리는 음의 값에 대한 통찰력을 잃게됩니다.
또한 첫 번째 시리즈의 최소값을 두 번째 시리즈의 최소 극한과 동일하게 설정하려고 시도했지만 불행히도이 방법은 열의 크기를 매우 정교하게 조정하지 않습니다 (각 Y 축 값이 완전히 설정되어 있기 때문에). 다른 가늠자, ie : 10s 대 1000s).
0 포인트 "기준선"이 공유되도록 차트를 구성하려면 어떻게해야합니까? 즉, 푸른 색 기둥을 초록색 0 점과 같은 기본 선에서 어떻게 시작하게할까요?
업데이트
링거의 대답은 올바른 방향으로의 한 단계입니다. 두 축 모두에 min
및 tickinterval
을 설정하면 트릭을 수행합니다. 그러나 변수 데이터를 기반으로 동적으로 값을 결정해야합니다.
차트를 생성하기 전에 min
과 tickinterval
값을 결정하는 방법에 대한 팁은 무엇입니까?
나는 그것에 대해 생각 해왔다. 왼쪽 축과 관련된 값 (파란색/따옴표)은 항상 양수이며 0부터 시작합니다. 따라서 영점 아래에 표시 할 틱의 수를 지시하는 것이 올바른 축 (녹색/판매)입니다.
var factor = right_axis.min/right_axis.tickinterval;
left_axis.min = factor * left.tickinterval;
참고 : highcharts가 자동으로 파란색과 녹색 모두를위한 최선의 규모를 결정 지금부터 내가해야 할 필요가 있으므로 (의사 코드를 변명)처럼 왼쪽 축 '최소 값을 설정하는 방법을 찾을 수 있습니다 : 참조 API가 Axis에서 setExtremes() 메서드를 사용하는 것을 보았습니다. 그러나 먼저 차트를 초기화 한 다음 돌아가서 왼쪽 축을 업데이트해야합니다. 차트를 그리기 전에이 작업을 수행하고 싶습니다. 아마 나는 명백한 것을 간과 할 것입니까?
감사합니다.
내 차트를 동적으로 생성해야합니다. 프로그래밍 방식으로 min 및 tickinterval에 대한 적절한 값을 어떻게 결정합니까? 이 추가 된 통찰력을 반영하여 질문을 업데이트했습니다. 도와 주셔서 감사합니다. –
제안 사항에 대한 내 답변을 수정하십시오. – Linger
감사합니다. –