CSV 데이터가 포함된 그래프
Qt Graphs 에서 CSV 파일의 데이터를 시각화하는 방법.
CSV 데이터가 포함된 그래프 예제에서는 CSV 파일의 데이터를 2D 막대형 차트에 표시하는 방법을 보여줍니다. 애플리케이션은 타사 CSV 파서를 사용하여 CSV 파일을 읽습니다. 데이터는 QAbstractTableModel 에서 상속되는 사용자 지정 모델에 삽입됩니다. 데이터가 모델에 삽입된 후 가장 왼쪽 열에는 세로 머리글 데이터가 포함되고 맨 위 행에는 가로 머리글 데이터가 포함됩니다.
선택한 타사 라이브러리는 Qt 리소스 시스템에 대해 아무것도 알지 못하므로 파일 경로에서 CSV 파일을 로드할 수 없습니다. 따라서 라이브러리에 전달하기 전에 소스의 내용을 로드해야 합니다. 이 예제의 CSV 라이브러리는 파일 경로인 std::fstream
또는 std::stringstream
으로 파일을 받아들입니다. CSV 파일이 Qt 리소스에 있기 때문에 라이브러리는 파일을 로드하는 방법을 모르고 QFile 는 std::fstream
를 지원하지 않으므로 남은 유일한 옵션은 std::stringstream
를 사용하는 것뿐입니다. 전체 파일을 QFile::readAll()를 통해 문자열로 읽은 다음 해당 문자열을 std::stringstream
로 열 수 있습니다.
애플리케이션 창에서 테이블 보기는 모델의 데이터를 표시합니다. 테이블 보기에서 사용자는 데이터의 하위 섹션을 선택하여 막대 그래프에 표시할 수 있습니다.
막대 시리즈는 카테고리 축 레이블을 수정하지 않으므로 시리즈를 업데이트해도 축 레이블은 업데이트되지 않습니다. 이는 모델의 가장 왼쪽 열에서 레이블 이름을 추출하여 JavaScript에서 처리합니다. 그런 다음 추출된 레이블 이름을 카테고리 축의 레이블 속성으로 설정합니다.
function extractBarSetGategories(first, count) { var categories = []; const last = first + count; for (var i = first; i < last; ++i) categories.push(tv.model.headerData(i, Qt.Horizontal, Qt.DisplayRole) + " medals"); return categories; }
예제 실행
에서 예제를 실행하려면 Qt Creator에서 Welcome 모드를 열고 Examples 에서 예제를 선택합니다. 자세한 내용은 Qt Creator: 튜토리얼을 참조하세요 : 빌드 및 실행을 참조하세요.
QML 애플리케이션도참조하세요 .
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.