웹 페이지 컬럼(key) 순서 정렬 오류

YunSu4·2024년 8월 1일

O-D Matrix Project

목록 보기
2/3


이처럼 python 파일에서는 정렬을 하였으나 웹 페이지상으로는 정렬이 안 되어 표기되는 경우가 있다.


해결 방법

정확한 원인: python으로 dataframe 자체의 key 순서는 정렬을 할 수 있지만 웹 페이지에 표기하기 위해 json으로 변환하는데 이때, json의 경우 키 순서를 보장해주지 않기 때문에 key 순서가 dataframe의 키 순서가 다르게 표기될 수 있다.


이처럼 웹 페이지의 개발자도구-> 네트워크 탭에서 응답을 보면 key순서가 dataframe의 key 순서대로 들어오지 않은 것을 확인할 수 있다.
(dataframe은 exit, 1-1부터 1-10까지 순서대로 정렬하였다.)


해결 방법: 웹 페이지에 javascript로 데이터를 표로 보여주는 과정에서 key 순서를 지정하고, 그 순서대로 출력되도록 하였다.
즉, key를 리스트로 모두 작성하여 지정하고 그 key의 순서대로 응답이 테이블 형태로 표기되도록 하였다.

<원하는대로 정렬된 모습>





시도했던 방법들

방법 1.


자체 sort 함수를 만들어서 dataframe을 정렬하였다.



방법 2.


dataframe의 key 순서를 list형태로 만들어 지정했다.



하지만 모두 데이터프레임이 정렬되지 않은 것이 아닌 json형태로 변환되면서 key 순서가 지켜지지 않은 문제였기 때문에 정렬이 되지 않았다.
이를 통해 python으로 데이터를 다루는 방식과 웹 페이지에서 표시하는 방식이 다르기 때문에 이를 항상 유의해야함을 알 수 있었다.

profile
에러수집가

0개의 댓글