e-n-f / datamaps Goto Github PK
View Code? Open in Web Editor NEWIndexes points and lines and generates map tiles to display them
License: BSD 2-Clause "Simplified" License
Indexes points and lines and generates map tiles to display them
License: BSD 2-Clause "Simplified" License
I suggest to reuse a higher level build system than your current small make file so that powerful checks for software features will become easier.
Hi Eric
We've written a specfile for datamaps to aid in our deployment on Centos and Fedora based machines and it'd be handy if we could assign values for license and version number to it. We'd be happy to submit the specfile for inclusion via a PR too.
Thank you for your time.
I was generating a tileset for a single zoom level (15) and actually ran out of inodes!
Command: enumerate -z15 -Z15 dirname | xargs -L1 -P8 ./render -o tiles/dirname
To ensure the machine I'm using is suitable, how can I figure out the total file count (not size) for zoom level 15?
@ericfischer Is there an option to specify a color code for a huge dataset using encode
? In my case, there is a .osm
file for buildings in SF Peninsula and I want the output gif from osm-animate to be shown in some bright color.
When compiling render
:
undef: ___sincos_stret
Undefined symbols for architecture x86_64:
The solution was to run xcode-select --install
which I found here: Homebrew/legacy-homebrew#22553
I'm only using the xcode CLI tools, maybe that's it?
Hey @ericfischer - assume that for each data point, I have a percentage for how far into the day it occurred. What could I feed into the encode
script to have it consider this for colouring? I'd like to end up with something where I can see that data points within a certain geographic area happened early in the day, whereas data points within another area happened later into the day. Ideas are appreciated, thank you!
After a tileset has been created with enumerate
and render
could you add instructions for some next steps? e.g. how could one stitch/combine all the individual tiles to form one large image?
The docs state
-p area
Specifies a multiplier for dot sizes. Point brightness is automatically reduced by the same factor so the total brightness remains constant, just diffused. The default is 1.
-p garea
Specifies a Gaussian brush instead of a flat disk, as well as a multiplier for dot sizes.
Because both are -p, it's not particularly clear how to specify a Gaussian brush.
I've been trying to approximately reproduce a vector-based map I created. In the original, I splat dots at 40% opacity, and with color based on a timestamp:
Alas, we're working with millions of points now and the svg approach has become unscalable, so I am looking toward raster solutions and found this repo (which is amazing, by the way). It'd be great to have the ability to splat points with a specified alpha in datamaps -- but looking through the code I'm not really sure where to start. I've tried some post-processing approaches, but can't find a good mapping from color to alpha. For the best so far I've had to resort to single color and mapping greyscale directly to alpha, which leaves large square grey regions around each point:
Thoughts?
I see that render-vector is a task in the Makefile, but when I add it to the all task, I get an error. Probably because I don't have all the TM2 dependencies installed - but not sure which ones.
On a related note - a million thanks for open-sourcing your secret sauce. This is a really cool piece of code.
I have looked at a few source files for your current software. I have noticed that some checks for return codes are missing.
Would you like to add more error handling for return values from functions like the following?
EDIT: Please delete the question. I just had to do "make" to compile everything using the makefile.
ORIGINAL:
I have almost no knowledge of C at all , and I am trying to follow the Readme in order to make a map as cool as yours.
so right now, i've followed these steps:
1.clone this repo
git clone https://github.com/ericfischer/datamaps.git
2.
cd datamaps
mkdir output_folder
copy in the /datamaps folder a txt file following this structure:
lat,lon
lat,lon
lat,lon
...
cat file.txt | ./encode -o output_folder -z 16
however, i get the following error.
-bash: ./encode: No such file or directory
I guessed it is because encode.c is not compiled.
Then I tried compiling it doing:
gcc encode.c -o encode
and that throws another error:
/tmp/ccTwkJ7r.o: In function `read_file':
encode.c:(.text+0x589): undefined reference to `latlon2tile'
encode.c:(.text+0x750): undefined reference to `bytesfor'
encode.c:(.text+0x822): undefined reference to `xy2buf'
encode.c:(.text+0x87a): undefined reference to `xy2buf'
encode.c:(.text+0x8df): undefined reference to `meta2buf'
/tmp/ccTwkJ7r.o: In function `main':
encode.c:(.text+0x12c1): undefined reference to `bytesfor'
encode.c:(.text+0x12d3): undefined reference to `gSortBytes'
encode.c:(.text+0x163d): undefined reference to `bufcmp'
collect2: error: ld returned 1 exit status
Any help on what I am doing wrong and how to make the maps would help me a lot!
Any way of enumerating over just a single zoom level? I'm just doing slight brightness and base changes on each zoom level manually to get more control than ramp allows.
Right now I'm just enumerating through everything up to a zoom level and then throwing away everything I don't need, which is wasteful and slow.
It's not clear in the documentation if the encode tool will merge data to the index if a call it pointing to an existing index. Is that the case?
I tried to read the source code, but I guess my C skills are a little bit rusty.
Thanks for the great project.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.