Highcharts: TypeError : μ •μ˜λ˜μ§€ μ•Šμ€ 'pos'속성을 읽을 수 μ—†μŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 02μ›” 15일  Β·  18μ½”λ©˜νŠΈ  Β·  좜처: highcharts/highcharts

highcharts.js와 ν•¨κ»˜ highcharts-ngλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
κ·Έλž˜ν”„λ₯Ό μ‹œμž‘ν•  λ•Œλ§ˆλ‹€μ΄ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

angular.js:13920 TypeError: Cannot read property 'pos' of undefined
    at https://code.highcharts.com/stock/highstock.js:518:422
    at Array.forEach (<anonymous>)
    at a.each (https://code.highcharts.com/stock/highstock.js:27:466)
    at F.<anonymous> (https://code.highcharts.com/stock/highstock.js:518:396)
    at F.a.(anonymous function) [as getPlotLinePath] (https://code.highcharts.com/stock/highstock.js:19:437)
    at a.Tick.renderGridLine (https://code.highcharts.com/stock/highstock.js:113:264)
    at a.Tick.render (https://code.highcharts.com/stock/highstock.js:115:472)
    at F.renderTick (https://code.highcharts.com/stock/highstock.js:159:427)
    at https://code.highcharts.com/stock/highstock.js:160:448
    at Array.forEach (<anonymous>)

μ–΄λ–€ 아이디어?

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ‹€μŒ 버전 (7.0.3)은 이번 μ£Ό 말에 μ˜ˆμ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

λͺ¨λ“  18 λŒ“κΈ€

μ•ˆλ…•ν•˜μ„Έμš” @ Lir10

μ§€μ›νŒ€μ— 문의 ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ? μ°Έμ‘° : https://www.highcharts.com/support

버그 λ³΄κ³ μ„œμ—λŠ” github 문제λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. κ·€ν•˜μ˜ 경우 이것이 Highstock의 버그인지, 잘λͺ» κ΅¬μ„±λœ μ°¨νŠΈμΈμ§€ λ˜λŠ” highcharts-ng λͺ¨λ“ˆμ˜ 버그인지 ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ–΄λ–€ 아이디어?

단 ν•˜λ‚˜μ˜ 아이디어 : 였λ₯˜λŠ” xAxis / yAxis ν‹± 문제λ₯Ό μ œμ•ˆν•˜λ―€λ‘œ 거기에 μ •μ˜ 된 μ˜΅μ…˜μ„ μ œκ±°ν•˜κ³  λ¬Έμ œκ°€ ν•΄κ²°λ˜λŠ”μ§€ ν™•μΈν•˜λ €κ³ ν•©λ‹ˆλ‹€. κ·Έλ ‡λ‹€λ©΄ highcharts-ng없이 jsfiddleμ—μ„œ 문제λ₯Ό μž¬ν˜„ν•˜μ—¬ Highstock lib의 버그인지 ν™•μΈν•˜μ‹­μ‹œμ˜€.

μ•ˆλ…•ν•˜μ„Έμš” @pawelfus ,

당신이 μ˜³μ•˜μŠ΅λ‹ˆλ‹€-λ¬Έμ œλŠ” xAxis ν‹±μ—μžˆμ—ˆμŠ΅λ‹ˆλ‹€

문제 μ’…κ²°

@ Lir10 λ¬Έμ œκ°€ 무엇인지 물어봐도 λ κΉŒμš”? λ‚˜λŠ” 같은 λ¬Έμ œκ°€ 있으며 원인을 μ •ν™•νžˆ 밝히렀고 λ…Έλ ₯ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 감사!

λΏ‘λΏ‘

이 μž‘μ—…μ„ μ œμ•ˆν•©λ‹ˆλ‹€.

μ–΄λ–€ 아이디어?

단 ν•˜λ‚˜μ˜ 아이디어 : 였λ₯˜λŠ” xAxis / yAxis ν‹± 문제λ₯Ό μ œμ•ˆν•˜λ―€λ‘œ 거기에 μ •μ˜ 된 μ˜΅μ…˜μ„ μ œκ±°ν•˜κ³  λ¬Έμ œκ°€ ν•΄κ²°λ˜λŠ”μ§€ ν™•μΈν•˜λ €κ³ ν•©λ‹ˆλ‹€. κ·Έλ ‡λ‹€λ©΄ highcharts-ng없이 jsfiddleμ—μ„œ 문제λ₯Ό μž¬ν˜„ν•˜μ—¬ Highstock lib의 버그인지 ν™•μΈν•˜μ‹­μ‹œμ˜€.

@ Lir10 , 아직도 κΈ°μ–΅ν•œλ‹€λ©΄ λ¬Έμ œκ°€ μ •ν™•νžˆ 어디에 μžˆμ—ˆλŠ”μ§€ μ„€λͺ…ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ? λ‚˜λŠ” 같은 λ¬Έμ œμ— μ§λ©΄ν•˜κ³  μžˆμ§€λ§Œ 상황을 νŒŒμ•…ν•  수 μ—†μœΌλ©° λ¬΄μž‘μœ„λ‘œ λ°œμƒν•˜λ©° λΆˆν–‰νžˆλ„ @pawelfus 의 λŒ€λ‹΅μ€ 거의 λ„μ›€μ΄λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš” @davletovalmir

문제λ₯Ό μž¬ν˜„ν•˜λŠ” μ•ˆμ •μ μΈ 방법을 제곡 ν•  μˆ˜μžˆλŠ” 경우 ν•„μš”ν•œ 데λͺ¨ λ˜λŠ” νŒŒμΌμ— λŒ€ν•œ 링크λ₯Ό κ³΅μœ ν•˜μ‹­μ‹œμ˜€.

@KacperMadej , 아직 κ·Όλ³Έ 원인을 찾을 수 μ—†μ—ˆμ§€λ§Œ 여기에 μ œκ°€ μ•Œμ•„ λ‚Έ 것이 μžˆμŠ΅λ‹ˆλ‹€ (μ•„λž˜ λ‚œλ… ν™” 된 μ½”λ“œ 쑰각에 λŒ€ν•΄ 미리 μ£„μ†‘ν•©λ‹ˆλ‹€).

  1. ν•΄λ‹Ή 블둝 λ‚΄λΆ€μ˜ step ν•¨μˆ˜μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.
d.group.animate({
  scaleY: 1
}, G(z(d.options.animation), {
  step: function(a, b) {
    h[f] = v + b.pos * (c.pos - v); /// <-- b is undefined
    d.group.attr(h)
  }
}))
  1. step ν•¨μˆ˜λŠ” μ—¬κΈ°μ„œ μ•Œ 수 μžˆλ“―μ΄ μ»¨ν…μŠ€νŠΈλ₯Ό ν¬ν•¨ν•˜μ§€λ§Œ a 및 b μΈμˆ˜μ—†μ΄ μ—¬κΈ°μ—μ„œ ν˜ΈμΆœλ©λ‹ˆλ‹€.
animate: function(e, q, b) {
  q = a.animObject(y(q, this.renderer.globalAnimation, !0));
  y(m.hidden, m.msHidden, m.webkitHidden, !1) && (q.duration = 0);
  0 !== q.duration ? (b && (q.complete = b),
    h(this, e, q)) : (this.attr(e, null, b),
  q.step && q.step.call(this)); /// <-- function called without arguments
  return this
}
  1. ν•΄λ‹Ή animate ν•¨μˆ˜λŠ” SVGElement 일뢀이며 render ν•¨μˆ˜ λ‚΄μ—μ„œ ν˜ΈμΆœλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
  2. λ‚˜λŠ” 이것을 μž¬ν˜„ν•˜λŠ” 방법을 μ°Ύμ•˜μ§€λ§Œ μ΄μƒν•©λ‹ˆλ‹€. μ•±μ˜ 라이브 λ¦¬λ‘œλ“œ, μ°¨νŠΈκ°€ 처음 λ Œλ”λ§ 될 λ•Œ, 주둜 λΈŒλΌμš°μ €μ— 초점이 λ§žμ§€ μ•Šμ„ λ•Œ λ°œμƒν•©λ‹ˆλ‹€.

λ‚˜λŠ” κ·Έ 문제λ₯Ό 깊이 쑰사 ν•  μ‹œκ°„μ΄ μΆ©λΆ„ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€. λ‚΄κ°€ 찾은 것이 λ„μ›€μ΄λ˜κΈ°λ₯Ό λ°”λžλ‹ˆλ‹€.

PS μ½˜μ†” 였λ₯˜κ°€μžˆλŠ” 슀크린 샷도 μ²¨λΆ€ν•©λ‹ˆλ‹€. λ§Žμ€ 도움이 될지 ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ λˆ„κ°€ μ•Œκ² μŠ΅λ‹ˆκΉŒ :)
image

μ•ˆλ…•ν•˜μ„Έμš”.
정보λ₯Ό μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. 문제λ₯Ό μž¬ν˜„ν•˜κΈ°μ— μΆ©λΆ„ν•©λ‹ˆλ‹€.

λ‹€μŒ 은 μ½”λ“œ μˆ˜μ •μ— λŒ€ν•œ
https://jsfiddle.net/BlackLabel/L6x08jeq/1/

데λͺ¨μ˜ μ½”λ“œ μˆ˜μ • 사항을 μ½”λ“œμ— 적용 ν•  수 μžˆμŠ΅λ‹ˆλ‹€ (예 : κΈ°λ³Έ Highcharts 파일 뒀에 λͺ¨λ“ˆ). μ‹œκ°„μ΄ μžˆλ‹€λ©΄ μ•±μ˜ 였λ₯˜κ°€ ν•΄κ²°λ˜λŠ”μ§€ ν™•μΈν•˜μ„Έμš”.

μ°Έκ³  : μΆ•μ†Œλ˜μ§€ μ•Šμ€ Highcharts κ΄€λ ¨ 파일의 μ‚¬λžŒμ΄ 읽을 μˆ˜μžˆλŠ” μ½”λ“œλŠ” .src.js -예 : highcharts.src.js 와 ν•¨κ»˜ νŒŒμΌμ„ μ‚¬μš©ν•˜μ—¬ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ„ΈλΆ€ 정보 (κΈ΄ 이야기라고도 함) :

μ°¨νŠΈκ°€ 처음으둜 λ Œλ”λ§λ˜κ³  주둜 λΈŒλΌμš°μ €μ— 초점이 λ§žμ§€ μ•Šμ„ λ•Œ

확인해야 ν•  μ‚¬ν•­μž…λ‹ˆλ‹€. 이것은 초점이 λ§žμ§€ μ•ŠλŠ” λΈŒλΌμš°μ € μΉ΄λ“œ / 창의 μ• λ‹ˆλ©”μ΄μ…˜μ„ λ°©μ§€ν•˜λŠ” 졜근 κΈ°λŠ₯κ³Ό μ—°κ²°λ˜μ—ˆμ„ 수 μžˆμŠ΅λ‹ˆλ‹€ (아무도보고 μžˆμ§€ μ•Šμ„ λ•Œ μ• λ‹ˆλ©”μ΄μ…˜μ„ 적용 ν•  ν•„μš”κ°€ μ—†κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€).

μΆ•μ†Œλ˜μ§€ μ•Šμ€ μ½”λ“œμ—μ„œ μ˜¬λ°”λ₯Έ ν•΄λ‹Ή μ½”λ“œλ₯Ό 얻을 μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ„œ 핡심은 μ—΄ μ‹œλ¦¬μ¦ˆ μœ ν˜•μ„ μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

데λͺ¨ : https://jsfiddle.net/BlackLabel/L6x08jeq/
단계 :

  1. λΈŒλΌμš°μ € μ½˜μ†” μ—΄κΈ°
  2. μ°¨νŠΈκ°€ 였λ₯˜μ—†μ΄ 열리고 μ½˜μ†”μ„ μ—΄μ–΄ λ‘‘λ‹ˆλ‹€.
  3. μ‹€ν–‰ λ²„νŠΌμ„ λˆ„λ₯΄κ³  탭을 숨 κΉλ‹ˆλ‹€.
  4. μ°¨νŠΈκ°€ λ Œλ”λ§ 된 ν›„ μ½˜μ†”μ— 였λ₯˜κ°€ ν‘œμ‹œλ©λ‹ˆλ‹€.

_ λ‚΄λΆ€ μ°Έκ³  : _
H.pick((fx && fx.pos), 1) λŒ€μ‹  fx.pos 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 것 κ°™λ‹€,ν•˜μ§€λ§Œ μ‹œν—˜μ΄ 확인에 ν•„μš”ν•©λ‹ˆλ‹€.

@KacperMadej , κ°μ‚¬ν•©λ‹ˆλ‹€. μˆ˜μ • μž‘ν’ˆ :)
이 μˆ˜μ • 사항이 μ–Έμ œ 릴리슀 될지 μ˜ˆμƒν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

μ•ˆλ…•ν•˜μ„Έμš”.
μˆ˜μ • 사항은 이번 μ£Ό PR에 포함될 μ˜ˆμ •μ΄λ©° λ‹€μŒ Highcharts 버전과 ν•¨κ»˜ 릴리슀 될 μ˜ˆμ •μž…λ‹ˆλ‹€.

κ·Έλ™μ•ˆ :

  • 이제 해결책은 데λͺ¨μ— ν‘œμ‹œλœλŒ€λ‘œ λž˜ν•‘ 된 μ½”λ“œλ₯Ό μΆ”κ°€ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.
  • 컀밋이 μ™„λ£Œλ˜λ©΄ Highcharts λΉŒλ“œμ™€ ν•¨κ»˜ μˆ˜μ • μ‚¬ν•­μ΄μžˆλŠ” 뢄기와 κ΄€λ ¨λœ GitHub 기반 링크λ₯Ό 톡해 μˆ˜μ • 사항에 μ•‘μ„ΈμŠ€ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • PR이 승인 된 ν›„ μˆ˜μ • 된 Highcharts λΉŒλ“œλŠ” GitHub 기반 링크 ( https://github.highcharts.com/highcharts.src.js)의 λ§ˆμŠ€ν„° λΈŒλžœμΉ˜μ—μ„œ μ•‘μ„ΈμŠ€ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

이 λ¬Έμ œλŠ” animate ν•¨μˆ˜κ°€ μ• λ‹ˆλ©”μ΄μ…˜μ„ 우회 ν•  λ•Œ step μ μ ˆν•œ 인수λ₯Ό μ „λ‹¬ν•˜μ§€ μ•Šμ•„μ„œ λ°œμƒν–ˆκΈ° λ•Œλ¬Έμ— λŒ€μ‹  μˆ˜μ •ν–ˆμŠ΅λ‹ˆλ‹€.

@KacperMadej λ‹€μŒ λ¦΄λ¦¬μŠ€κΉŒμ§€ μ–Όλ§ˆλ‚˜ κ±Έλ¦½λ‹ˆκΉŒ? μš°λ¦¬λŠ” μ•΅κ·€λŸ¬ ν•˜μ΄ μ°¨νŠΈμ—μ„œ 방금 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ν–ˆμœΌλ©° λ©°μΉ  내에 더 이상 μ‘΄μž¬ν•˜μ§€ μ•Šμ„ 버그λ₯Ό μˆ˜μ •ν•˜κΈ°μœ„ν•œ μΆ”κ°€ μ½”λ“œλ‘œ μ‹œμž‘ν•˜λŠ” λŒ€μ‹  κΈ°λŠ₯ 브랜치λ₯Ό λ³‘ν•©ν•˜κΈ° 전에 μˆ˜μ •μ΄ 포함 된 버전을 μ„€μΉ˜ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.

λ‹€μŒ 버전 (7.0.3)은 이번 μ£Ό 말에 μ˜ˆμ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.

μ—…λ°μ΄νŠΈ 된 ETAκ°€ μžˆμŠ΅λ‹ˆκΉŒ?

νšŒκ·€ ν…ŒμŠ€νŠΈκ°€ 진행 μ€‘μž…λ‹ˆλ‹€. λͺ¨λ“  λ¬Έμ œκ°€ ν•΄κ²°λ˜λ©΄ μƒˆ 버전이 μΆœμ‹œ 될 μ˜ˆμ •μž…λ‹ˆλ‹€. 곧 μƒˆ 버전이 μΆœμ‹œ 될 μ˜ˆμ •μž…λ‹ˆλ‹€.

μ§€κΈˆ μΆœμ‹œλ˜μ—ˆμŠ΅λ‹ˆλ‹€ @yhoiseth

단! μ•Œλ € μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€ πŸ™‚

μ–΄λ–€ 이유둜 GitHub가이 μ €μž₯μ†Œμ— λŒ€ν•œ "릴리슀λ₯Όλ³΄κ³  μžˆμ§€λ§Œ"μ•Œλ €μ£Όμ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€ πŸ€”

μ•Œλ¦Όμ„λ°›μ§€ λͺ»ν•œ μ΄μœ λŠ” λͺ¨λ₯΄κ² μ§€λ§Œ 메일 λ§λ¦¬μŠ€νŠΈμ— κ°€μž… ν•  수 μžˆμŠ΅λ‹ˆλ‹€. https://www.highcharts.com/blog/download/

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰