Giter Club home page Giter Club logo

universite-gustave-eiffel / noisemodelling Goto Github PK

View Code? Open in Web Editor NEW
148.0 148.0 75.0 79.38 MB

A open-source model to compute noise maps.

Home Page: https://noisemodelling.readthedocs.io

License: GNU General Public License v3.0

Java 66.86% CSS 2.11% JavaScript 0.39% HTML 0.24% Groovy 30.01% Shell 0.06% Batchfile 0.05% Python 0.27%
acoustics cnossos-eu gis java modelling noise noise-modelling noise-propagation pathfinder pathfinding propagation research sound-propagation

noisemodelling's People

Contributors

agouge avatar agueganno avatar alesieur avatar arnaudcan avatar bakaniko avatar dependabot[bot] avatar ebocher avatar gourlaysama avatar gpetit avatar mrerdem avatar nicolas-f avatar nitnelav avatar picaut avatar pierromond avatar sachabaclet avatar spalominos avatar yugaobjtu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

noisemodelling's Issues

GetTableFromOSM

On wps block GetTableFromOSM
For speed field, take account of value x km/h mp/h etc..

can't save drawn fence

On the new version of noisemodelling, it is possible to draw a fence manually but when it is done it cannot be saved into the database.

Switch to Poly2Tri

Various enhancements:

  • Try with the library Poly2Tri instead of JDelaunay
  • If possible, remove intersection test for the method isTriangleInBuilding.

750 m search zone

Execute request 2/2: create table tri_lvl as SELECT * from
BR_TriGrid((select st_expand(st_envelope(st_accum(the_geom)), -750, - 750) the_geom from ROADS_SRC),'buildings','roads_src','DB_M','',750,50,1.5,2.8,75,0,0,0.23)
Evaluate cell 1/1
ERROR Thread-248 - General error: "java.lang.NullPointerException"; SQL statement:
create table tri_lvl as SELECT * from
BR_TriGrid((select st_expand(st_envelope(st_accum(the_geom)), -750, - 750) the_geom from ROADS_SRC),'buildings','roads_src','DB_M','',750,50,1.5,2.8,75,0,0,0.23) [50000-185]
org.h2.jdbc.JdbcSQLException: General error: "java.lang.NullPointerException"; SQL statement:
create table tri_lvl as SELECT * from
BR_TriGrid((select st_expand(st_envelope(st_accum(the_geom)), -750, - 750) the_geom from ROADS_SRC),'buildings','roads_src','DB_M','',750,50,1.5,2.8,75,0,0,0.23) [50000-185]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:168)
at org.h2.message.DbException.convert(DbException.java:295)
at org.h2.command.Command.executeUpdate(Command.java:262)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:184)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:158)
at org.h2gis.utilities.wrapper.StatementWrapper.execute(StatementWrapper.java:93)
at org.orbisgis.view.sqlconsole.actions.ExecuteScriptProcess.parseAndExecuteScript(ExecuteScriptProcess.java:125)
at org.orbisgis.view.sqlconsole.actions.ExecuteScriptProcess.run(ExecuteScriptProcess.java:154)
at org.orbisgis.view.background.Job.run(Job.java:87)
at org.orbisgis.view.background.RunnableBackgroundJob.run(RunnableBackgroundJob.java:71)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at org.orbisgis.noisemap.core.jdbc.TriangleNoiseMap.evaluateCell(TriangleNoiseMap.java:291)
at org.orbisgis.noisemap.h2.BR_TriGrid3D$TriangleRowSource.readRow(BR_TriGrid3D.java:275)
at org.h2.tools.SimpleResultSet.next(SimpleResultSet.java:221)
at org.h2.result.LocalResult.read(LocalResult.java:97)
at org.h2.table.FunctionTable.getResult(FunctionTable.java:198)
at org.h2.index.FunctionIndex.find(FunctionIndex.java:48)
at org.h2.index.BaseIndex.find(BaseIndex.java:127)
at org.h2.index.IndexCursor.find(IndexCursor.java:159)
at org.h2.table.TableFilter.next(TableFilter.java:329)
at org.h2.command.dml.Select.queryFlat(Select.java:532)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:644)
at org.h2.command.dml.Query.query(Query.java:322)
at org.h2.command.dml.Insert.insertRows(Insert.java:167)
at org.h2.command.dml.Insert.update(Insert.java:114)
at org.h2.command.ddl.CreateTable.update(CreateTable.java:185)
at org.h2.command.CommandContainer.update(CommandContainer.java:78)
at org.h2.command.Command.executeUpdate(Command.java:254)
... 8 more
OVERALL EXECUTION TIME: 1,879 seconds

Wps scripts small modifications

  • In "export" block : Change "input" to "output"
  • In "Get Lday tuto" : give the possibility to the user to change the name of the output table
  • In "Get Lday tuto" : print the name of the output table

set up

I can install the app on the PC.
It appears the following message: Orbis GIS need at least java 1.7+
, but Ive already installed java 8.0
How can I go on?
thnks,
PEre

Problem while generating the Triangle

An error is thrown when doing sound propagation with Br_TriGrid or BR_PtGrid.

Problem while generating the Triangle : false true true
org.jdelaunay.delaunay.geometries.DTriangle.<init>(DTriangle.java:128)
org.jdelaunay.delaunay.BoundaryPart.connectPoint(BoundaryPart.java:388)
org.jdelaunay.delaunay.Boundary.insertPoint(Boundary.java:206)
org.jdelaunay.delaunay.ConstrainedMesh.processDelaunay(ConstrainedMesh.java:1173)
org.orbisgis.noisemap.core.LayerJDelaunay.processDelaunay(LayerJDelaunay.java:247)
org.orbisgis.noisemap.core.LayerJDelaunay.processDelaunay(LayerJDelaunay.java:203)
org.orbisgis.noisemap.core.MeshBuilder.finishPolygonFeeding(MeshBuilder.java:335)
org.orbisgis.noisemap.core.MeshBuilder.finishPolygonFeeding(MeshBuilder.java:291)
org.orbisgis.noisemap.core.jdbc.PointNoiseMap.prepareCell(PointNoiseMap.java:80)
org.orbisgis.noisemap.core.jdbc.PointNoiseMap.evaluateCell(PointNoiseMap.java:157)
org.orbisgis.noisemap.h2.BR_PtGrid3D$PointRowSource.readRow(BR_PtGrid3D.java:198)
org.h2.tools.SimpleResultSet.next(SimpleResultSet.java:221)
org.h2.result.LocalResult.read(LocalResult.java:97)
org.h2.table.FunctionTable.getResult(FunctionTable.java:198)
org.h2.index.FunctionIndex.find(FunctionIndex.java:48)
org.h2.index.BaseIndex.find(BaseIndex.java:127)
org.h2.index.IndexCursor.find(IndexCursor.java:159)
org.h2.table.TableFilter.next(TableFilter.java:329)
org.h2.command.dml.Select.queryFlat(Select.java:574)
org.h2.command.dml.Select.queryWithoutCache(Select.java:686)
org.h2.command.dml.Query.query(Query.java:322)
org.h2.command.dml.Insert.insertRows(Insert.java:167)
org.h2.command.dml.Insert.update(Insert.java:114)
org.h2.command.ddl.CreateTable.update(CreateTable.java:185)
org.h2.command.CommandContainer.update(CommandContainer.java:78)
org.h2.command.Command.executeUpdate(Command.java:254)
org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:184)
org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:158)
org.h2gis.utilities.wrapper.StatementWrapper.execute(StatementWrapper.java:93)
org.orbisgis.sqlconsole.actions.ExecuteScriptProcess.parseAndExecuteScript(ExecuteScriptProcess.java:109)
org.orbisgis.sqlconsole.actions.ExecuteScriptProcess.doInBackground(ExecuteScriptProcess.java:134)
javax.swing.SwingWorker$1.call(Unknown Source)
java.util.concurrent.FutureTask.run(Unknown Source)
javax.swing.SwingWorker.run(Unknown Source)
java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

Add help tab for acousticians

Maybe we could add an help tab somewhere for acousticians with some usefull tools or tips as:

  • Create receivers grid which are not on buildings:
CREATE TABLE full_grid AS SELECT * FROM    ST_MakeGridPoints('BUILDINGS_NS', 500, 500);
drop table small_grid if exists;
create table small_grid as select (select b.pk from buildings_ns b where st_intersects(a.the_geom , b.the_geom)) id, a.the_geom the_geom from full_grid  a;
delete from small_grid where id is not null;

Errors, missing information, unclear explanations in wiki

This issue aims to provide insight from a new user about the project wiki.

It aims to list missing or broken links, non clear explanations and such.

01 Installation

Deploy in maven

Please deploy the next stable version as a maven dep so it'd be possible to use it in a groovy script using @grab.

BR_EvalSource more complete signature

BR_EvalSource function has only default value for the road width, road pavement type,the aging of the road and the traffic flow (accelerated, decelerated or stabilized).

Update signature in order to take account of theses additional parameters.

Problem Using data from OpenStreetMap

Bonjour,
En suivant le tutoriel "Using data from OpenStreetMap", j'ai cette erreur ::

ERROR [Thread-141] (ExecuteScriptProcess.java:160) - General error: "java.lang.NullPointerException"; SQL statement:
create table tri_lvl as SELECT * from
BR_TriGrid((select st_expand(st_envelope(st_accum(the_geom)), -750, - 750) the_geom from ROADS_SRC),'buildings','roads_src','DB_M','',750,50,1.5,2.8,75,0,0,0.23) [50000-182]
org.h2.jdbc.JdbcSQLException: General error: "java.lang.NullPointerException"; SQL statement:
create table tri_lvl as SELECT * from
BR_TriGrid((select st_expand(st_envelope(st_accum(the_geom)), -750, - 750) the_geom from ROADS_SRC),'buildings','roads_src','DB_M','',750,50,1.5,2.8,75,0,0,0.23) [50000-182]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:168)
at org.h2.message.DbException.convert(DbException.java:295)
at org.h2.command.Command.executeUpdate(Command.java:262)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:184)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:158)
at org.h2gis.utilities.wrapper.StatementWrapper.execute(StatementWrapper.java:93)
at org.orbisgis.view.sqlconsole.actions.ExecuteScriptProcess.parseAndExecuteScript(ExecuteScriptProcess.java:125)
at org.orbisgis.view.sqlconsole.actions.ExecuteScriptProcess.run(ExecuteScriptProcess.java:154)
at org.orbisgis.view.background.Job.run(Job.java:87)
at org.orbisgis.view.background.RunnableBackgroundJob.run(RunnableBackgroundJob.java:71)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at org.orbisgis.noisemap.core.jdbc.TriangleNoiseMap.evaluateCell(TriangleNoiseMap.java:291)
at org.orbisgis.noisemap.h2.BR_TriGrid3D$TriangleRowSource.readRow(BR_TriGrid3D.java:275)
at org.h2.tools.SimpleResultSet.next(SimpleResultSet.java:221)
at org.h2.result.LocalResult.read(LocalResult.java:97)
at org.h2.table.FunctionTable.getResult(FunctionTable.java:197)
at org.h2.index.FunctionIndex.find(FunctionIndex.java:48)
at org.h2.index.BaseIndex.find(BaseIndex.java:127)
at org.h2.index.IndexCursor.find(IndexCursor.java:159)
at org.h2.table.TableFilter.next(TableFilter.java:329)
at org.h2.command.dml.Select.queryFlat(Select.java:532)
at org.h2.command.dml.Select.queryWithoutCache(Select.java:644)
at org.h2.command.dml.Query.query(Query.java:322)
at org.h2.command.dml.Insert.insertRows(Insert.java:167)
at org.h2.command.dml.Insert.update(Insert.java:114)
at org.h2.command.ddl.CreateTable.update(CreateTable.java:185)
at org.h2.command.CommandContainer.update(CommandContainer.java:78)
at org.h2.command.Command.executeUpdate(Command.java:254)
... 8 more

De plus, comment récupérer les données réelles du trafic routier d'un lieu ? Que fait on lorsqu'on utilise le "Fake traffic"?

Cordialement

Importing shpfiles in python

Trying to import shape files in python does not work for me.
Using shpread I get the following error:
Caught this error: OperationalError('server closed the connection unexpectedly
This probably means the server terminated abnormally
tbefore or while processing the request.

Server trace:

CALL SHPREAD('/home/USER/orbisgis_noise/orbisgis_h2gis/input_shape/buildings_shp/buildings.shp', 'buildings');
org.h2.jdbc.JdbcSQLException:
General error: "java.lang.NullPointerException" [50000-182]; SQL statement:

           CALL SHPREAD('/home/USER/orbisgis_noise/orbisgis_h2gis/input_shape/buildings_shp/buildings.shp', 'buildings') [0-182]
    at org.h2.message.DbException.addSQL(DbException.java:132)
    at org.h2.command.Command.executeQuery(Command.java:213)
    at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:179)
    at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:158)
    at org.h2.server.pg.PgServerThread.process(PgServerThread.java:392)
    at org.h2.server.pg.PgServerThread.run(PgServerThread.java:90)
    at java.lang.Thread.run(Thread.java:748)

Caused by: java.sql.SQLException:


Using filetable there is no error - a table is created but remains empty.


Importing a shpFile through the browser interface works - however if I want to connect to that database then - the connection fails. I assume this is some spatial plugin issue?
org.h2.jdbc.JdbcSQLException: Class "org.h2gis.functions.spatial.properties.ST_GeometryTypeCode" not found; SQL statement:
CREATE DOMAIN POINT AS GEOMETRY(1) CHECK (PUBLIC.ST_GEOMETRYTYPECODE(VALUE) = 1) [90086-182]


One more question: Is there a possibility to open the resulting databases in OrbisGis or the H2 webinterface? I cannnot connect the webinterface to an existing database - it always seems to create a new one on the fly , when trying to connect to existing database on the browserinterface-


I would be very happy about any tipps !:)

BR_TriGrid fails for certain building constellations

Our script is using your python-script (https://github.com/Ifsttar/NoiseModelling/wiki/11-Scripting-with-Python) in order to assess the noise emitted by a highway into a virtual neighborhood. See screenshot. Urban planners can provide different constellations of buildings and see the effect of building constellation onto the noise propagation. The script worked fine for many constellations of buildings. However for some constellations of buildings it fails.

If I put a building into the marked vacant gridcell, the script runs fine. Leaving the space "free" (no building, no road) , I get the error.
Shortest distance from marked square to road should be roughly 515meters. One square is 16*16meters.

Could you help me understanding , why the BR_TriGrid fails? We would like to automatically assess different virtual neighborhood designs.

For reproducing the error, I created a branch of the script here.
You can reproduce the buildings from this
You can reproduce roads, traffic from this
You can look at the stack-trace (as much as I managed to get out of it) here

There is nothing in .OrbisGis/5.1/orbisgis.log ; I guess because the OrbisGis package from https://github.com/Ifsttar/NoiseModelling/wiki/11-Scripting-with-Python works differently)

Thank you so much!

Can't find Groovy console in OrbisGIS 5.1.0 SNAPSHOT FR

Hi,

I'm following the steps in the tutorial 07 Horizontal noise map, but I can't find Groovy console in the Plugin manager as suggested in the Groovy console documentation.

2018-12-04 09_07_40-plugin manager

As you can see, there is only the Groovy Runtime and the WPS Groovy API.
I was not able to find a bundle from Groovy Console Github page in order to try a manual installation.

I'm using OrbisGIS 5.1.0 SNAPSHOT FR that I downloaded from the NoiseModelling installation page

G to sigma

I think we can integrate an option to switch from G to Sigma and thus have more realistic frequency absorption values.

To be continued....

Noob Issue (Where to get help?)

I asked a question on GIS-SE and have just downloaded v4 of OrbisGIS to have a play.

Im having problems, and I imagine this is not the place to seek help. Is there a forum or an IRC channel anywhere? I would be more than happy to put together a blog post after im done showing how i started from scratch and ended up with some results. Ive worked with IMMI in the past, and my goal is to do some noise maps for Melbourne.

I installed the noise plugin as per the instructions and have then tried to run through the Quick Start guide by running the SQL statements.

I get no errors until this line:

create table tri_lvl as SELECT * from BR_TriGrid(buildings,roads_src,'db_m',750,50,0,1.5,2.8,75,2,1,0.23);
ERROR Thread-116 - Data access error:
org.gdms.driver.DriverException: org.gdms.sql.function.FunctionException: org.noisemap.core.LayerDelaunayError: Cannot run program "triangle": CreateProcess error=2, The system cannot find the file specified

I also tried running the sql from the demonstration, but this straight away gives the error:

Running instruction 5/20 :
create table bati_indifferencie_in_fence as select b.the_geom from bati_indifferencie b,extrafence f where ST_Intersects(f.the_geom,b.the_geom);
ERROR Thread-108 - Fatal error on the job named Executing script
org.gdms.data.NoSuchTableException: The table bati_indifferencie does not exist!

Any ideas on where I am going wrong and where I should be asking this?

BR_TriGrid3D info not updated in the "SQL fonctions" section on the Wiki

In the wiki, it is written :

BR_TriGrid3D(Geometry computeEnvelope,VARCHAR buildingsTable, VARCHAR heightFieldName, VARCHAR sourcesTable, VARCHAR sourcesTableSoundFieldName, VARCHAR groundTypeTable, VARCHAR demTable, double maximumPropagationDistance, double maximumWallSeekingDistance, double roadsWidth, double receiversDensification, double maximumAreaOfTriangle, int soundReflectionOrder, int soundDiffractionOrder, double wallAlpha)

In stead of :

BR_TriGrid3D(String buildingsTable, String heightFieldName, String sourcesTable, String sourcesTableSoundFieldName, String groundTypeTable, String demTable, double maximumPropagationDistance, double maximumWallSeekingDistance, double roadsWidth, double receiversDensification, double maximumAreaOfTriangle, int soundReflectionOrder, int soundDiffractionOrder, double wallAlpha)

wich is correct in the OrbisGis's "show SQL fonction list" tab.

NPE

NPE while doing computation. With version d52d986

Caused by: java.lang.NullPointerException
    at org.orbisgis.noisemap.core.LayerJDelaunay.processDelaunay(LayerJDelaunay.java:279)
    at org.orbisgis.noisemap.core.LayerJDelaunay.processDelaunay(LayerJDelaunay.java:203)
    at org.orbisgis.noisemap.core.MeshBuilder.finishPolygonFeeding(MeshBuilder.java:335)
    at org.orbisgis.noisemap.core.MeshBuilder.finishPolygonFeeding(MeshBuilder.java:291)
    at org.orbisgis.noisemap.core.jdbc.PointNoiseMap.prepareCell(PointNoiseMap.java:79)
    at org.orbisgis.noisemap.core.jdbc.PointNoiseMap.evaluateCell(PointNoiseMap.java:157)
    at org.orbisgis.noisemap.h2.BR_PtGrid3D$PointRowSource.readRow(BR_PtGrid3D.java:198)
    at org.h2.tools.SimpleResultSet.next(SimpleResultSet.java:221)

BR_TRIGRID

I'm working on a project noise modelling for a tramway
and i'm using noisemap plugin in orbisgis
But it seems that there is probleme with the function Br_trigrid it gives an umpty table tri lvl, and i'can't figure out why can i get some help
Capture

Cnossos TODO

Module Développé Cas Test + Validation (CSTB)
Emission Cnossos OK OK
Propagation Sol Plan Ok OK
Propagation Sol Diff G Ok Ok
Propagation Topo Ok Ok
Meteo Ok Ok
Diffraction Arrête horizontale En partie En partie
Diffraction Arrête Verticale En partie Non
Réflexion Ok Ok
Réflexion + Diffraction ? En partie Non
Retrodiffraction Non Non
Janvier 2019 (?!?) Non Non
Matrice Att Ok Non
EN 1793-1:2013 Non Non

Update documentation

It will be cool to update the wiki with a documentation to explain :

  • How to install and run the plugin,

-What are the inputs and outputs data

Légende carte bruit

Ce serait bien d'afficher la barre de couleurs quand on visualise une carte de bruit calculée sous noisemap.

Very basic setup - please help

Hi all, I hope you are all well!

I'm really interested in using this software, but I'm struggling to get it set up (my computing knowledge isn't really up to these standards!).

I have Java installed, I have Orbisgis installed and running, and I have the NoiseModel folder downloaded. What I can't figure out is how to get them to work together - does NoiseModel need to be opened via Orbisgis?

Please accept my appolgies for such a basic question, and thanks in advance for any help offered.

Best

AT

problem with BR_PtGrid3D_ATT_F when computing on higher scales than 1x1 grid

when I compute the Attenuation matrix on higher scales than 1x1 grid, (2x2 or 4x4) the matrix doesn't compute the attenuation for the majority of the receivers and for the ones which are computed, it does not match with their ID. The resulting output file is much smaller than expected and the IDs don't match.
For 1x1 grid, it works fine

Wiki SQL BR_PtGrid3D

BR_PtGrid3D(String buildingsTable, String heightFieldName,String sourcesTable, String receiversTable, String sourcesTableSoundFieldName, String groundTypeTable, double maximumPropagationDistance, double maximumWallSeekingDistance, int soundReflectionOrder, int soundDiffractionOrder, double wallAlpha)

Missing "dem table" in the method definition.

Implement Esrii ASCII grid reader to Polygon Table

Is your feature request related to a problem? Please describe.
NoiseModelling DEM table needs to be a point cloud. Usually dem are provided as a .ASC file. H2GIS 1.5.x is not able to read this format

Describe the solution you'd like
Add a WPS block in order to read ASC file format.

Format description here

http://resources.esri.com/help/9.3/arcgisdesktop/com/gp_toolref/spatial_analyst_tools/esri_ascii_raster_format.htm

Use Scanner class

https://docs.oracle.com/javase/8/docs/api/java/util/Scanner.html#Scanner(java.io.InputStream)

Describe alternatives you've considered
Implement as an H2GIS driver extension in Java.

Rework output of BR_TriGrid(3D) and BR_PtGrid(3D)

BR_TriGrid(3D) and BR_PtGrid(3D) should not read noise level of sound sources and output the attenuation level for each visible sound sources. Then update all tutorials in wikis.

SourceID ReceiverID ATT100HZ ATT125HZ
12 1 6.15 5.15
15 1 4.15 4.25

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.