как читать данные из json файла с графиком в kepler.gl, используя React - PullRequest
0 голосов
/ 17 апреля 2020

Я работаю над kepler.gl .... сейчас я читаю данные из API и черпаю эти данные в keplr.gl, и это нормально работает, вот код ...

import keplerGlReducer from "kepler.gl/reducers";
import { createStore, combineReducers, applyMiddleware } from "redux";
import { taskMiddleware } from "react-palm/tasks";
import { Provider, useDispatch } from "react-redux";
import KeplerGl from "kepler.gl";
import { addDataToMap } from "kepler.gl/actions";
import useSwr from "swr";

const reducers = combineReducers({
  keplerGl: keplerGlReducer
});

const store = createStore(reducers, {}, applyMiddleware(taskMiddleware));

export default function App() {
  return (
    <Provider store={store}>
      <Map />
      <csv/>
    </Provider>
  );
}

function Map() {
  const dispatch = useDispatch();
  const { data } = useSwr("covid", async () => {
    const response = await fetch(
     "https://gist.githubusercontent.com/leighhalliday/a994915d8050e90d413515e97babd3b3/raw/a3eaaadcc784168e3845a98931780bd60afb362f/covid19.json"
     );
     const data = await response.json();
     return data;
   });

  React.useEffect(() => {
    if (data) {
      dispatch(
        addDataToMap({
          datasets: {
            info: {
              label: "COVID-19",
              id: "covid19"
            },
            data
          },
          option: {
            centerMap: true,
            readOnly: false
          },
          config: {}
        })
      );
    }
  }, [dispatch, data]);

  return (
    <KeplerGl
      id="covid"
      mapboxApiAccessToken="pk.eyJ1IjoiYWxpcmF6YTcwNSIsImEiOiJjazh5d2hjb3AwOHBqM2VsY21wOHo5eXprIn0.9G5CE4KqfbvU9HQ6WBuo3w"
      width={window.innerWidth}
      height={window.innerHeight}
    />
  );
}

теперь я хочу прочитать данные из файла jason или csv и вывести эти данные на карту kepler.gl .. как я могу это сделать, может кто-нибудь мне помочь? ..... спасибо

1 Ответ

0 голосов
/ 17 апреля 2020

Самый простой способ - поместить файл json или csv рядом с вашим кодом и
импортировать файл json:

const dataJson = require('./data.json');

изменить источник данных на json :

const data = dataJson
// or dataJson.data depending on your json structure

или если ваши данные в формате csv, самый быстрый способ, который приходит вам на ум, это установить csv-parse, а затем:

const data = parse(csvData, {
   //config based on your csv format
   columns: true,
   skip_empty_lines: true
});

надеюсь, что это то, что вы ищете для

...