CoinBLAS
mapbox-gl-js
CoinBLAS | mapbox-gl-js | |
---|---|---|
3 | 13 | |
21 | 10,712 | |
- | 0.4% | |
1.8 | 9.8 | |
almost 3 years ago | 9 days ago | |
Jupyter Notebook | JavaScript | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
CoinBLAS
-
The "missing" graph datatype already exists. It was invented in the '70s
When you consider that a graph and a matrix are isomorphic, doing vector matrix multiplication takes a vector with a set value, say row 4, and multiplies it by a matrix where row 4 has values present that represent edges to the nodes that are adjacent to it (ie "adjacency" matrix). The result is a vector with the next "step" in a BFS across the graph, do that in a loop and you step across the whole graph.
A cool result of this is, for example, taking an adjacency matrix and squaring it is the "Friend of a Friend" graph. It takes every node/row and multiplies it by itself, returning a matrix that are adjacent to the adjacencies of each node, ie, the friends (adjacencies of the adjacencies) of friends (adjacencies) of the nodes.
Deeper traversal are just higher nodes, a matrix cubed are the friends of the friends of the friends.
A picture is worth a thousand words, see figure 7 of this paper:
https://arxiv.org/pdf/1606.05790.pdf
Also check out figure 8, this shows how incidence matrices can work to represent hyper and multi graphs. An pair of incidence matrices reprsent two graphs, one from nodes to edges and the other from edges to nodes, these are n by m and m by n. When you multiply them, you get a square adjacency matrix that "projects" the incidence into an adjacency. This can be used to collapse hypergraphs into simple graphs that use different semirings to combine the multiple edges.
For some pretty pictures of this kind of stuff, check out CoinBLAS (note I am not a crypto-bro, it was just a very handy extremely large multi-graph that I could easily download in chunks to play with):
https://github.com/Graphegon/CoinBLAS/
-
Ask HN: What Are You Working On?
Python wrapper around The GraphBLAS API:
https://github.com/michelp/pygraphblas
For an upcoming paper we've open sourced using pygraphblas to analyse the bitcoin graph using the GAP benchmarks on a server with 1TB of RAM:
https://github.com/Graphegon/CoinBLAS
- Show HN: CoinBLAS – Bitcoin Analysis with the GraphBLAS
mapbox-gl-js
-
Brave browser simplifies its fingerprinting protections
Good. Brave's fiddling with WebGL causes >50% of my bug reports from 1% of users.
[1] https://github.com/mapbox/mapbox-gl-js/issues/10518
[2] https://github.com/mapbox/mapbox-gl-js/issues/8377
-
What is the tech stack for MapGinie dot IO?
Laravel and Mapbox GL JS
- [OC] 20 years of forest loss in South East Asia - INTERACTIVE
-
Getting Started with MapLibre GL JS
It originated as an open-source fork of Mapbox-gl-js before they switched to a non-open-source license on 8th December 2020.
-
75% of Nova Scotia's population lives in the red areas
Do you have programming skills? MapboxGL JS is a great library for stuff like this, you can really easily add a layer of GeoJSON data to a map. If you're looking for something less technical Google map lets you create custom maps where you can add a bunch of pins.
-
Experimenting with Mapbox GL JS's upcoming globe projection
From the latest commits (not released/stable yet): git clone https://github.com/mapbox/mapbox-gl-js.git yarn install yarn run build-prod-min yarn run build-css Then use the generated mapbox-gl.js and mapbox-gl.css files. See CONTRIBUTING.md for more details.
-
Reimagining projections for the interactive maps era
> too bad it doesn't come with some code
Mapbox changed the license of their code last year I think to a proprietary one. https://github.com/mapbox/mapbox-gl-js/blob/main/LICENSE.txt
It requires a mapbox user license with billing enabled to use this code, let alone make modifications. But the source is viewable on github.
- I built an app that maps out crime statistics
-
MapLibre GL is a free and open-source fork of mapbox-gl-JS
The software stopped being open source from v2 onwards. The new licence makes it merely shared source.
This GitHub issue where this change is announced provides a number of more in-depth explanations why this is a bad thing for most users of the software: https://github.com/mapbox/mapbox-gl-js/issues/10162
-
Ask HN: What Are You Working On?
It's a bummer mapbox isn't open source anymore, now you're (and lots of other peoplare) are stuck pre-2.0.0 :(
https://github.com/mapbox/mapbox-gl-js/blob/main/CHANGELOG.m...
What are some alternatives?
Tasker - A commitment tracker desktop app that tracks the progress of your tasks with mouse, keyboard and audio hooks.
maplibre-gl-js - MapLibre GL JS - Interactive vector tile maps in WebGL2
covid_status
cesium - An open-source JavaScript library for world-class 3D globes and maps :earth_americas: [Moved to: https://github.com/CesiumGS/cesium]
roost - Proof of Concept for Eventsourced backend
h3 - Hexagonal hierarchical geospatial indexing system
suncalc - A tiny JavaScript library for calculating sun/moon positions and phases.
ffprobe-wasm - A Web-based FFProbe. Powered by FFmpeg, Vue and Web Assembly!
osmosis-js - JS reference implementation of Osmosis, a JSON data store with peer-to-peer background sync
martin - Blazing fast and lightweight PostGIS, MBtiles and PMtiles tile server, tile generation, and mbtiles tooling.
slam-crappy - Navigation project for an indoor robot using a Raspberry Pi, Arduino by combining a camera/OpenCV and physical measurements from ultrasonic and single point lidar sensor.
tangram - WebGL map rendering engine for creative cartography