简体   繁体   English

Javascript,Geojson,Json

[英]Javascript , Geojson, Json

I am trying to build a map, i did all the data in GIS (QGIS,ESRI) i am trying to publish it using leaflet, my problem is, i have a json will be for the updated data like cases numbers, and i want it to reflect in info bar, update, so when user hover over the country, it will get the name or code from geojson properties by oneachfeature and try to find it in the json, then return multi results from the json array i choose.我正在尝试构建一个 map,我在 GIS(QGIS,ESRI)中完成了所有数据,我正在尝试使用 leaflet 发布它,我的问题是,我有一个 Z466DEEC76ECDF5FCA6D38iZ 想要更新的数据,例如案例编号 5,它反映在信息栏中,更新,因此当用户hover在全国范围内时,它将通过oneachfeature从geojson属性中获取名称或代码并尝试在json中找到它,然后从Z466DEEC76ECDF24FCA6D38571F63数组中返回多个结果I tried to filter and looping through, for json to json it works, i don't know why it faild for geojson to json Am Looking for Suggestion.我尝试过滤和循环,对于 json 到 json 它有效,我不知道为什么它失败了 geojson 到 json 我正在寻找建议。 Here Example for json file:这里是 json 文件的示例:

    var copy =[
{"type":"header","version":"4.9.0.1","comment":"Export to JSON plugin for PHPMyAdmin"},
{"type":"database","name":"corona"},
{"type":"table","name":"scrap1","database":"corona","data":[
{"id":"23","Country_Other":"S. Korea","Total_Cases":"10,423","New_Cases":"+39","Total_Deaths":"204 ","New_Deaths":"+4","Total_Recovered":"6,973","Active_Cases":"3,246","Serious_Critical":"55","TotCases_1Mpop":"203","Deaths_1Mpop":"4","Total_Tests":"477,304","Tests_1Mpop":"9,310"},
{"id":"24","Country_Other":"Russia","Total_Cases":"10,131","New_Cases":"+1,459","Total_Deaths":"76 ","New_Deaths":"+13","Total_Recovered":"698","Active_Cases":"9,357","Serious_Critical":"8","TotCases_1Mpop":"69","Deaths_1Mpop":"0.5","Total_Tests":"1,004,719","Tests_1Mpop":"6,885"},
{"id":"25","Country_Other":"Israel","Total_Cases":"9,968","New_Cases":"+564","Total_Deaths":"86 ","New_Deaths":"+13","Total_Recovered":"1,011","Active_Cases":"8,871","Serious_Critical":"166","TotCases_1Mpop":"1,152","Deaths_1Mpop":"10","Total_Tests":"117,339","Tests_1Mpop":"13,557"},
{"id":"26","Country_Other":"Sweden","Total_Cases":"9,141","New_Cases":"+722","Total_Deaths":"793 ","New_Deaths":"+106","Total_Recovered":"205","Active_Cases":"8,143","Serious_Critical":"719","TotCases_1Mpop":"905","Deaths_1Mpop":"79","Total_Tests":"54,700","Tests_1Mpop":"5,416"},
{"id":"27","Country_Other":"India","Total_Cases":"6,725","New_Cases":"+809","Total_Deaths":"226 ","New_Deaths":"+48","Total_Recovered":"620","Active_Cases":"5,879","Serious_Critical":"","TotCases_1Mpop":"5","Deaths_1Mpop":"0.2","Total_Tests":"177,584","Tests_1Mpop":"129"},
{"id":"9","Country_Other":"Spain","Total_Cases":"152,446","New_Cases":"+4,226","Total_Deaths":"15,238 ","New_Deaths":"+446","Total_Recovered":"52,165","Active_Cases":"85,043","Serious_Critical":"7,371","TotCases_1Mpop":"3,261","Deaths_1Mpop":"326","Total_Tests":"355,000","Tests_1Mpop":"7,593"},
{"id":"10","Country_Other":"Italy","Total_Cases":"143,626","New_Cases":"+4,204","Total_Deaths":"18,279 ","New_Deaths":"+610","Total_Recovered":"28,470","Active_Cases":"96,877","Serious_Critical":"3,605","TotCases_1Mpop":"2,375","Deaths_1Mpop":"302","Total_Tests":"853,369","Tests_1Mpop":"14,114"},
{"id":"11","Country_Other":"France","Total_Cases":"117,749","New_Cases":"+4,799","Total_Deaths":"12,210 ","New_Deaths":"+1,341","Total_Recovered":"23,206","Active_Cases":"82,333","Serious_Critical":"7,066","TotCases_1Mpop":"1,804","Deaths_1Mpop":"187","Total_Tests":"333,807","Tests_1Mpop":"5,114"}
]
}
]

Example for the GEOJson: GEOJson 的示例:

{
"type": "FeatureCollection",
"name": "newcount",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
"features": [
    { "type": "Feature", "properties": { "FID_1": 53, "featurecla": "Admin-0 country", "scalerank": 4, "LABELRANK": 2, "SOVEREIGNT": "Spain", "SOV_A3": "ESP", "ADM0_DIF": 0, "LEVEL": 2, "TYPE": "Sovereign country", "ADMIN": "Spain", "ADM0_A3": "ESP", "GEOU_DIF": 0, "GEOUNIT": "Spain", "GU_A3": "ESP", "SU_DIF": 0, "SUBUNIT": "Spain", "SU_A3": "ESP", "BRK_DIFF": 0, "NAME": "Spain", "NAME_LONG": "Spain", "BRK_A3": "ESP", "BRK_NAME": "Spain", "BRK_GROUP": null, "ABBREV": "Sp.", "POSTAL": "E", "FORMAL_EN": "Kingdom of Spain", "FORMAL_FR": null, "NAME_CIAWF": "Spain", "NOTE_ADM0": null, "NOTE_BRK": null, "NAME_SORT": "Spain", "NAME_ALT": null, "MAPCOLOR7": 4, "MAPCOLOR8": 5, "MAPCOLOR9": 5, "MAPCOLOR13": 5, "POP_EST": 48958159, "POP_RANK": 15, "GDP_MD_EST": 1690000.0, "POP_YEAR": 2017, "LASTCENSUS": 2001, "GDP_YEAR": 2016, "ECONOMY": "2. Developed region: nonG7", "INCOME_GRP": "1. High income: OECD", "WIKIPEDIA": -99, "FIPS_10_": "SP", "ISO_A2": "ES", "ISO_A3": "ESP", "ISO_A3_EH": "ESP", "ISO_N3": "724", "UN_A3": "724", "WB_A2": "ES", "WB_A3": "ESP", "WOE_ID": 23424950, "WOE_ID_EH": 23424950, "WOE_NOTE": "Exact WOE match as country", "ADM0_A3_IS": "ESP", "ADM0_A3_US": "ESP", "ADM0_A3_UN": -99, "ADM0_A3_WB": -99, "CONTINENT": "Europe", "REGION_UN": "Europe", "SUBREGION": "Southern Europe", "REGION_WB": "Europe & Central Asia", "NAME_LEN": 5, "LONG_LEN": 5, "ABBREV_LEN": 3, "TINY": -99, "HOMEPART": 1, "MIN_ZOOM": 0.0, "MIN_LABEL": 2.0, "MAX_LABEL": 7.0, "NE_ID": 1159320587, "WIKIDATAID": "Q29", "NAME_AR": "إسبانيا", "NAME_BN": "স্পেন", "NAME_DE": "Spanien", "NAME_EN": "Spain", "NAME_ES": "España", "NAME_FR": "Espagne", "NAME_EL": "Ισπανία", "NAME_HI": "स्पेन", "NAME_HU": "Spanyolország", "NAME_ID": "Spanyol", "NAME_IT": "Spagna", "NAME_JA": "スペイン", "NAME_KO": "스페인", "NAME_NL": "Spanje", "NAME_PL": "Hiszpania", "NAME_PT": "Espanha", "NAME_RU": "Испания", "NAME_SV": "Spanien", "NAME_TR": "İspanya", "NAME_VI": "Tây Ban Nha", "NAME_ZH": "西班牙", "FID_2": 244, "OBJECTID": 245, "FID_": 54, "SOVEREIG_1": "Spain", "ADMIN_1": "Spain", "GEOUNIT_1": "Spain", "SUBUNIT_1": "Spain", "NAME_1": "Spain", "NAME_LON_1": "Spain", "BRK_NAME_1": "Spain", "NAME_SOR_1": "Spain", "NAME_ALT_1": null, "CONTINEN_1": "Europe", "NAME_AR_1": "إسبانيا", "NAME_EN_1": "Spain", "un_name": "Spain", "Total_Co": 4231, "Total_newC": 1266, "Total_Deat": 120, "Total_Deth": 36, "Day_last": 0, "Recover": 0, "X": -3.5633652521000001, "Y": 40.399772813600002, "Distance": 0.0 }, "geometry": { "type": "MultiPolygon", "coordinates":   Clipped Because to long}}}}

The answer is well explained in this post please read it.答案在这篇文章中得到了很好的解释,请阅读。

If you want to get the value of the key Country_Other in your copy array you have to use:如果要获取副本数组中键 Country_Other 的值,则必须使用:

copy[2].data[i].Country_Other

If you asign the GeoJson to a variable named "copy", you will use:如果您将 GeoJson 分配给名为“copy”的变量,您将使用:

copy.features[i].properties.Name

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM