- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Coin
- 항해99
- 코인차트
- javascript
- 에러
- typescript
- typeorm
- apollo
- 3주차
- 코인
- error
- Flutter
- nextjs
- 리액트
- 주식
- API
- graphql
- Firebase
- chart
- Redux
- 채팅
- 차트만들기
- 주식차트
- 차트
- 차트구현
- 비전공자
- react
- websocket
- rtk
- nestjs
목록개발팁저장소/react (25)
Act99 기술블로그
오늘은 코드정리를 할 예정이다. 지금 작성한 코드의 문제점들은 1. [object1, object2....] 배열 요소를 각각의 배열로 변화시키는게 너무 많다. // array 데이터들 분류 const stockOpen = stockArray.map((item) => item.open); const openArray: number[] = []; stockOpen?.forEach((open) => openArray.push(open)); const stockClose = stockArray.map((item) => item.close); const closeArray: number[] = []; stockClose?.forEach((close) => closeArray.push(close)); const ..
다음은 볼린저 밴드를 만들 차례이다. 볼린저 밴드란 존 볼린저의 주가 기술적 분석 도구이며, 이동평균선을 추세중심선으로 사용하고, 상하한 변동폭은 추세중심선의 표준편차로 계산한 밴드이다. 볼린저 밴드의 상한선: 20일 이평선 값 + ( 20일 동안의 주가 표준편차 값 ) * 2 볼린저 밴드의 하한선: 20일 이평선 값 - ( 20일 동안의 주가 표준편차 값 ) * 2 볼린저 밴드 구름대 형성 -> 상한선과 하한선 갭 => (상한선 – 하한선) / 중심선 이다. 이를 이용해 볼린저 밴드를 만들 것이다. 먼저 20일간의 주가 표준편차 값을 구해야 한다. ** 밑그림** 평균값 clo20ArrayBol = clo20Array.slice(index, (index+20)) -> 20개씩 추출 clo20ArrayB..
저번 글에서 봤듯이 차트를 확대할 때, 과거 데이터를 가져오는 문제가 있었다. https://bugerstory.tistory.com/35 [React] 직접 주가 캔들 차트 & 거래량 바 차트 만들기4 - onWheel 을 통해 데이터값을 추가시키거나 오늘은 onWheel 을 통해 데이터 값을 추가 또는 감소시키는 작업을 했다. 그 전에 만들었던 코드를 일단 정리했다. stock.tsx 파일에서 불러오는 데이터를 handmade-chart.tsx 로 옮겼으며, 안쓰는 코드들 bugerstory.tistory.com 이 문제를 수정하기 위해 slice를 사용했다. const [dataLength, setDataLength] = useState(24); const stockData = data?.gsSto..
오늘은 onWheel 을 통해 데이터 값을 추가 또는 감소시키는 작업을 했다. 그 전에 만들었던 코드를 일단 정리했다. stock.tsx 파일에서 불러오는 데이터를 handmade-chart.tsx 로 옮겼으며, 안쓰는 코드들을 다 삭제시켰다. 중복 코드 정리와 코드축소화 작업, 컴포넌트 별 분류 작업은 오늘 할 작업을 마친 후 작업할 예정이다. 먼저, onWheel 로 불러올 데이터 량을 핸들링 할 필요가 있었다. const stockData = data?.gsStock.map((item) => item); const stockArray: any[] = []; stockData?.forEach((item) => stockArray.push(item)); console.log(stockArray); co..
먼저 오늘 한 결과물은 이렇다. 저번 시간에는 차트구현까지는 했으나, 데이터 값 대비 차트 구현이 정확하지 않았으며, 화면 리사이즈를 할 때 오류가 생겼다. (몇개의 데이터만 변화) 따라서 유지보수에도 편하고, 화면 리사이즈 시 자연스럽게 변하며, 차트를 좀 더 정밀하게 구현할 필요가 있었다. 먼저, 화면 리사이즈부터 다루었다. ReactHook 을 이용해 사이즈 변화상태마다 width, height 값을 구할 예정이다. (tailwindCSS 를 사용하면 편하지만, 정확한 width 값과 height 값이 필요했으며, Hook 연습도 필요했기 때문에 직접 구현했다.) Hook Docs를 보면 useWindowSize 를 이용하는 코드가 나와있다. (공부를 목적으로 하면 직접 타이핑하면서 작성할 것을 추..
이번에는 캔들 차트를 만들 차례이다. 기본틀은 거래량 차트 만들기와 같으며, 캔들차트 구현이라는 점에서 다르다. https://bugerstory.tistory.com/32 [React] 직접 주가 캔들 차트 & 거래량 바 차트 만들기 (라이브러리 x) (SVG 연습용) React-Google-Chart 를 사용하던 중, 직접 차트를 만들고 싶은 충동이 생겼다. 먼저 handmade-chart.tsx 를 만들어주고 svg 를 이용해 차트 틀부터 만들어 주었다. (CSS 경우 tailwind를 사용하였다.) - handmade-.. bugerstory.tistory.com 해야 할 일 1. 데이터 불러오기 2. 금액 최소값과 최대값을 구한 후, 7개의 구분선으로 나누기. 3. 시가와 종가 데이터로 바 차트..
React-Google-Chart 를 사용하던 중, 직접 차트를 만들고 싶은 충동이 생겼다. 먼저 handmade-chart.tsx 를 만들어주고 svg 를 이용해 차트 틀부터 만들어 주었다. (CSS 경우 tailwind를 사용하였다.) - handmade-chart.tsx import React from "react"; const SVG_CHART_WIDTH = 1600; const SVG_CHART_HEIGHT = 400; const SVG_VOLUME_WIDTH = 1600; const SVG_VOLUME_HEIGHT = 400; export const HandmadeChart = () => { const x0 = 50; const xAxisLength = SVG_CHART_WIDTH - x0 *..
저번에 Nestjs 와 postgresql 을 이용해 주식데이터를 localhost:4000 에 띄워놨다. https://bugerstory.tistory.com/28 [Nestjs] CSV 파일을 postgresql 테이블로 옮기고 localhost 에 띄우기 필자는 현재 주식정보를 RestAPI 로 띄운 후, React를 이용해 브라우저 상에서 주식 차트를 구현시키려고 한다. 프론트엔드 공부를 하려했지만, 주식 api를 직접 빌드해서 사용하고 싶었기 때문에 작 bugerstory.tistory.com React 를 이용해 브라우저상에 차트를 띄울 예정이며, 먼저 apollo와 apollo-toolings 를 설치했다. https://github.com/apollographql/apollo-toolin..