First off, why mess with such a retro format as Arc/Info Export (.e00)?- any code written for this ASCII file type in the last few years has been on how to go from e00 to pretty much anything (especially to the non-topological data format, the shapefile).
Put simply, topological information makes a lot of things possible for the intrepid ActionScripter.
E00 files non-redundantly store all nodes, lines, and polygons that make up a geographic data layer. This geodata format is one of three currently distributed by the Census Bureau for boundary files (the others are the shapefile and the Ungenerate ASCII format). The GIS formats used in most web mapping applications (I’m thinking of shapefiles, GeoJSON, and KML) are non-topological, meaning features are stored independently, and topological information on shared borders and the like is quite difficult to extract. Like seriously hard. Something you don’t want to be doing in the browser. Matthew Bloch, of the NY Times, did his cartography master’s thesis (at Wisconsin, natch) on MapShaper, much of which involved a C++ server-side solution for building topology from a polygonal shapefile. Generalization requires non-redundant polylines so as not to create gaps between features when smoothing. Other visualization techniques, including cartogram construction and graph decomposition, also require knowing the shared borders of geographic features.
Ideally, such topological information could be created/extracted for any geography, regardless of the datasource. In reality, topology building is intensive and best suited to server-side processing. Using E00 files and my E00Parser lets you experiment with the visualization and cartographic techniques only possible when such topological information is known, without the expensive processing necessary to build it.
The code
I’ve gotten a ton of use out of Edwin van Rijkom’s SHP library. My noncontiguous cartogram, isolining, and political choropleth experiments relied on the code to load coordinate data in shapefile form at run-time, as did the early experiments that led to indiemapper. I’m hoping I’ll get just as much use out of this parser, for when adjacency information is critical to the visualization technique.
There are two main classes, E00Parser and E00Tools. E00Parser is based on the Perl extension Geo::E00 by Alessandro Zummo and Bert Tijhuis, with much aid from the (world famous) Arc/Info Export Format Analysis. There’s no way I would have attempted to write the AS3 E00 parser without Zummo and Tijhuis’ code, as theirs appears to be the only stand-alone open source code available for reading the format. Their Perl regular expressions were copied with few modifications, though I did fix an issue in some that was keeping their code from accurately reading certain sections of double-precision coverages. I wrote E00Tools to collect a handful of methods for working with the resultant data.
I setup a Google Code project for this work, as topology will likely form the basis for a decent amount of my cartographic experimentation in the near future.
- to browse the code, just go here
- the latest zip distribution is available here
- three examples are included in com.indiemaps.mapping.data.parsers.e00.examples
Oh, BTW:
ESRI considers the export/import file format to be proprietary. As a consequence, the identified format can only constitute a “best guess” and must always be considered as tentative and subject to revision, as more is learned.
(from the Arc/Info Export Format Analysis)
How to use
After loading your ASCII E00 file into a string, use something like the following to parse it.
The returned data object includes all information contained in the file, and can have as many as nine sections. Of most use are the arc (non-redundant list of polylines), pal (list of all polygons and their associated lines), and ifo (attributes and labels) sections. The exact structure of the returned object is described on the wiki here.
There are three sweet examples to be found in com.indiemaps.mapping.data.parsers.e00.examples.
Tools
E00Tools contains some methods for working with the resultant data of E00Parser.parse(). Included are methods for:
- Drawing all features
- Drawing individual features
- Getting a list of polygon IDs for all features
- Getting the centroid of a feature
- Getting the shared border length of all features and their neighbors
Key above is the idea of the feature. Michigan is a feature. Features are not directly encoded in E00 files like they are in other formats. In a polygonal shapefile, for example, each feature is encoded as a multipolygon, constituted of one or more rings of points. In E00 files, only polygons are directly encoded; feature information (which polygons make up which features) can be ascertained from the INFO (ifo) section.
Experimentation
I created these AS3 classes for myself, because I wanted to experiment with topological geodata in visualization and cartographic applications. This typically boils down to knowing which features are neighbors and how much of a border they share. The E00Tools methods getAllFeatureNeighbors and getAllFeatureSharedBorderLengths gives you easy access to this information.
Daniel Dorling popularized the circular cartogram form among academic cartographers, outlining the symbology most notably in his 1991 PhD thesis and 1996’s Area Cartograms: Their Use and Creation (available here in PDF form along with many other gems of quantitative geography). Dr. Dorling made Pascal and C code available. I ported it to Python, and began experimenting, mostly in vain, on a method that worked with a shapefile as input, but without the expense of building topology. It produced at best a pale imitation. Dorling describes the gravity model used to produce the cartograms in his dissertation:
The algorithm which was developed to create the area cartograms worked by repeatedly applying a series of forces to the circles representing the places. Circles attract those they are topologically adjacent to; the strength of this attraction being greater the larger the distance is between them and the longer their common boundary.
The algorithm thus requires the shared border lengths of all features and their neighbors. Producing this info is easy with E00Tools, but it seems kind of backward to parse my geodata in ActionScript only to produce the rendering in Python. I’m working on porting Dorling’s algorithm to AS3 so I can go directly from geodata to cartogram without switching platforms.
Lee Byron mentions another technique, used to generate the Olympic Medal Count cartograms he helped produce for the Times. Byron didn’t release any code, but notes that a soft body force directed layout algorithm written in ActionScript was used. I haven’t been able to reproduce his method, but I’ve included an example that drops the topological information gathered from an E00 file into a Flare visualization using a force directed layout. The example is minimal, but shows how the E00 classes can be integrated with the Flare visualization API, and may point the way to a slightly different method for producing circular cartograms client-side.
80 Comments
Great article, thank you for sharing.
We are a gaggle of volunteers and opening a new scheme in our community. Your web site offered us with useful info to paintings on. You have performed an impressive task and our whole community will be thankful to you.
Hi Zachary,.. Gis technology is the most sought off technology today. Its was great to find this post . by chance but so good reading here.
Hi! I simply would like to offer you a big thumbs up for
your great information you have here on this post. I am returning to your site for more soon.
Do you have a spam problem on this blog; I also am a blogger, and I was wanting to know your situation; many of us have created some nice
practices and we are looking to trade techniques with other folks, be sure to shoot me an email if interested.
Hi, after reading this amazing paragraph i
am too cheerful to share my know-how here with colleagues.
If each and every report could be this detailed I’m certain you will find less
fascinated men and women concerning this subject!
Hi there to all, how is all, I think every one is getting more from this website, and your views are nice for new users.
cheap omega replica outlet
This is a topic that is near to my heart… Many
thanks! Where are your contact details though?
Good information Regards!
magnificent issues altogether, you simply gained a logo
new reader. What might you recommend about your put
up that you simply made some days ago? Any certain?
Hello! Do you know if they make any plugins to
assist with Search Engine Optimization? I’m trying to get my blog to rank for some targeted
keywords but I’m not seeing very good gains. If you know of any please share.
Thank you!
Right here is the perfect web site for everyone who would like to understand this topic.
You know a whole lot its almost hard to argue with you
(not that I actually will need to…HaHa). You definitely put a fresh spin on a
topic which has been written about for many years. Excellent stuff, just wonderful!
Hey! I could have sworn I’ve been to this site before but after checking through some of the post I realized it’s new to me.
Anyways, I’m definitely delighted I found
it and I’ll be book-marking and checking back frequently!
Wonderful data, Appreciate it!
Hi, Neat post. There is an issue with your website in web
explorer, would check this? IE still is the market
leader and a big portion of other people will pass
over your excellent writing due to this problem.
But later on many men were seen sporting skinny denims.
These jeans are designed to make you look and feel a size smaller.
Reducing text, or in this case clothes to their componet parts.
It’s appropriate time to make some plans for the future and it’s
time to be happy. I have read this post and if I could I wish to suggest you some interesting things or advice.
Maybe you can write next articles referring to this article.
I desire to read more things about it!
Heya i’m for the primary time here. I found this board and I find It truly
helpful & it helped me out a lot. I’m hoping to offer one
thing back and help others such as you helped me.
There is certainly a great deal to know about this subject.
I love all of the points you have made.
Everyone loves it whenever people get together and
share thoughts. Great website, stick with it!
Spot on with this write-up, I absolutely believe that
this web site needs far more attention. I’ll probably be returning to read more, thanks for
the advice!
Perfectly voiced genuinely. .
I enjoy what you guys are up too. This kind of clever work and coverage!
Keep up the fantastic works guys I’ve added you guys to my personal blogroll.
In the UK, usual tour dates include London, Manchester, Liverpool and Ireland as well as Nottingham, Bournemouth, Cardiff
and Newcastle. “The Fed - Ex - Cup and the PGA Tour playoffs will continue to generate interest and excitement through September, with the Fall Series focusing on the drama of players fighting for their Taylor - Made Burner 2. Japan information can be found on the internet in no time.
I just couldn’t go away your site before suggesting that I really loved the usual information a person supply on your visitors?
Is gonna be again frequently in order to check out new posts
Awesome things here. I’m very glad to peer your post.
Thanks a lot and I’m taking a look forward to contact you. Will you please drop me a
mail?
Hello, Neat post. There’s an issue with your website in internet explorer, might check this?
IE still is the market chief and a good section of other folks will
pass over your fantastic writing due to this problem.
If some one needs to be updated with newest technologies therefore he must be pay a quick visit this website and
be up to date daily.
To see a pictorial example of how cards are removed, see the next section
on removing the memory modules. A new expansion of Dell’s Inspiron portfolio, the Inspiron 15R
Special Edition and 17R Special Edition feature the Waves Maxx
- Audio 4 audio suite and Skullcandy speakers,
and standard discrete graphics from AMD
(Inspiron 15R Special Edition) and NVIDIA (Inspiron 17R Special Edition).
Similar in price to the Dell Inspiron 15 above,
the Gateway NV5613U drops a Gigabyte of RAM but doubles the hard drive space.
Benq Joybook Lite U101 is powered with an Intel Atom Processor
N270 and Windows XP Home Edition Linux Lite Operating
system. These have transparent, independent LCD panels for each primary color (red,
green and blue. This LCD projector can compete, and often beat,
the most expensive and state-of-the-art television on the market today.
Along with almost everything that appears to be developing throughout this specific area,
your points of view are relatively refreshing. However, I beg your
pardon, but I do not subscribe to your entire idea, all be it exhilarating none the less.
It seems to us that your comments are not completely validated
and in simple fact you are generally your self not entirely certain of your argument.
In any event I did take pleasure in examining it.
I do enjoy the manner in which you have framed this specific
For more information about Kesari tours you can visit. The rcovery of Japanese tourism was given a further boost in April this year, when the World Travel
& Tourism Council Global Summit 2012 was held in Japan.
If you are lopoking for a very forgiving driver this just might be
your answer.
Is your browser accessing the internet without your control.
Fortunately, Frash made itss way on the Jailbreaking scfene and allows the i - Phone,
i - Pod Touch, and the i - Pad to stream Flash
seamlessly on their i - Devices. Often people and companies
involved in the wireless network do not have enough understanding of how insecure their network is until finally they get
hacked into. A digital poste is an excellent part of the indoor digital
signage equipment obtainable; these aare applied in many strange and unusuql spots such as lifts.
You have a Sony Ericsson W995 and you’re ook with that, but what you really want right now is a nice set of apps
to seal the deal.
Together with almost everything which appears to be building inside this
particular area, your opinions tend to be rather radical. Nonetheless, I appologize, because I do not subscribe to
your entire suggestion, all be it exhilarating none the less.
It seems to me that your remarks are not completely validated and
in actuality you are your self not really thoroughly certain of
the argument. In any case I did take pleasure in reading
it.
I do love the manner in which you have framed this particular
I enjoy what you guys are usually up too. This sort of clever work and coverage!
Keep up the superb works guys I’ve incorporated you guys to blogroll.
Awesome! Its in fact awesome post, I have got much clear
idea concerning from this article.
Great weblog here! Additionally your web site so much up very fast!
What web host are you using? Can I am getting your affiliate
hyperlink to your host? I desire my web site loaded up as fast as yours lol
What you must do is to fill an online form.
You could possibly hear web start bothering with the confidentiality of your respective information.
The corporation handles all of the orders with great confidentiality.
Why will you want to use the escort services? Listed
below are the answers for you personally.
Thank you for the good writeup. It in reality was once a enjoyment account it.
Look complex to far brought agreeable from you!
By the way, how can we keep up a correspondence?
Brazil chanel Bags
I’m not sure where you’re getting your information, but great
topic. I needs to spend some time learning much more
or understanding more. Thanks for fantastic info I was looking for
this info for my mission.
You should take part in a contest for one of the finest sites
on the web. I will highly recommend this blog!
Argentina chanel Bag
Hi there, i read your blog from time to time and i own a similar one and i
was just wondering if you get a lot of spam
remarks? If so how do you stop it, any plugin
or anything you can suggest? I get so much lately it’s driving me mad so any assistance
is very much appreciated.
Wonderful blog! I found it while surfing around on Yahoo News.
Do you have any suggestions on how to get listed in Yahoo News?
I’ve been trying for a while but I never seem to get there!
Thanks
Italy chanel Bags
Hello! I could have sworn I’ve visited this website before but after going through a few of the posts I realized it’s new to me.
Anyways, I’m definitely happy I discovered it and I’ll be bookmarking it and checking back regularly!
Everything is very open with a really clear description of
the issues. It was really informative. Your website
is very useful. Many thanks for sharing!
Good info. Lucky me I came across your site by accident (stumbleupon).
I have book-marked it for later!
What i do not understood is in fact how you are no longer actually
a lot more well-preferred than you may be now. You’re very intelligent.
You know therefore significantly in relation to this subject, made
me for my part believe it from a lot of numerous angles.
Its like men and women aren’t fascinated until it’s something to do with Woman gaga!
Your personal stuffs outstanding. All the time take care of it up!
Hi colleagues, its great article on the topic of cultureand entirely
explained, keep it up all the time.
You can do this by ensuring they eat sufficient fruit and vegetables.
So it has a less full bodied flavor than tamari and it has
a larger alcohol content which isn’t necessarily
a problem but there’s less flavor to it and since it has wheat
in it people with wheat allergies and people with gluten intolerance which is a big percentage of the population cannot
consume it. Blueberries Chock filled with anti-oxidants and also
phytoflavinoids, Blueberries are also high in potassium as well as ascorbic
acid.
I know this if off topic but I’m looking into starting my
own blog and was curious what all is required to get set up?
I’m assuming having a blog like yours would cost a pretty penny?
I’m not very internet smart so I’m not 100% sure.
Any suggestions or advice would be greatly appreciated. Thank you
I am sure this article has touched all the internet users, its really really nice post on building up new website.
Rival Gaming is known around which is actually a for their incredible
i-Slots. Number of different win multipliers assist a player earn cash per whirl.
Minimum deposit for credit card is $25 and maximum of $200.
Spot on with this write-up, I honestly believe this website needs a great deal more
attention. I’ll probably be returning to read through more, thanks for the advice!
The in rank afterward suggestions enormously handy to my
opinion. Thank you especially to a large extent ahead
of time. The erudition about this focus is excellent, I’m glad that will this is located.
Thank you again!
A fascinating discussion is definitely worth comment.
I think that you should write more about this issue, it might not
be a taboo subject but generally folks don’t speak
about such topics. To the next! Many thanks!!
This piece of writing is truly a good one it assists new
internet viewers, who are wishing for blogging.
I constantly emailed this website post page to all my associates, since
if like to read it after that my links will too.
Nice post. I was checking constantly this blog
and I am impressed! Very useful info specifically the last part
I care for such information a lot. I was looking for this
certain info for a long time. Thank you and good luck.
Have you ever thought about publishing an ebook or guest authoring
on other sites? I have a blog centered on the same topics you discuss and would
really like to have you share some stories/information.
I know my readers would enjoy your work. If you’re even remotely interested, feel free to send
me an e mail.
My partner and I stumbled over here coming from a different web address
and thought I might as well check things out. I like what I see so
now i’m following you. Look forward to finding out about your
web page for a second time.
Hi there, just became aware of your blog through Google, and
found that it is truly informative. I am gonna watch out for brussels.
I will appreciate if you continue this in future. Many
people will be benefited from your writing. Cheers!
Normally I don’t read post on blogs, however I would like to say that
this write-up very forced me to try and do so! Your writing taste has been
amazed me. Thank you, very great article.
that my own body was sick ‘ and also inside listen consciously to what else my body required.
If your want in order to promote your items here you need to initially
become a member. Which means it’s the greatest time for marketers inside gear up furthermore
adopt their raging trend to benefit the most out of information technology.
Excellent post. Keep posting such kind of information on
your blog. Im really impressed by your site.
Hey there, You have performed an incredible job. I will certainly digg it and for my part
suggest to my friends. I am sure they will be benefited from this site.
Hmm it seems like your site ate my first comment (it was super long) so I guess I’ll just sum
it up what I submitted and say, I’m thoroughly enjoying your blog.
I as well am an aspiring blog blogger but I’m still new to everything.
Do you have any points for novice blog writers?
I’d definitely appreciate it.
Hey there! Do you use Twitter? I’d like to follow you if that would be okay.
I’m undoubtedly enjoying your blog and look forward to new updates.
Great post. I was checking continuously this blog and I am impressed!
Extremely useful info specifically the last part :
) I care for such information a lot. I was seeking this particular information for a long time.
Thank you and best of luck.
Свистать всех наверх - оратор открыл Америку.
Браво браво браво
Heya i’m for the first time here. I came across this board and I find It really helpful
& it helped me out much. I’m hoping to present
something again and aid others such as you aided me.
Itts such as you learn my mind! You seem to
understand a lot about this, such aas you wrote the ebookk in it or something.
I believe thnat you can do with a few percent to force the message home a little bit, but other than that,
this is magnificent blog. A great read. I’ll definitely bbe back.
Heya! I realize this is somewhat off-topic but I had to ask.
Does operating a well-established website such as yours require a lot of work?
I’m brand new to running a blog but I do write in my diary everyday.
I’d like to start a blog so I can share my personal experience and thoughts online.
Please let me know if you have any recommendations or tips for brand new aspiring blog owners.
Appreciate it!
Usually I don’t learn post on blogs, but I wish to say that this write-up very pressured me
to take a look at and do so! Your writing taste has been amazed me.
Thanks, very nice post.
In fact no matter if someone doesn’t be aware of after that its up to other people that they will help, so here it
takes place.
Now I am going to do my breakfast, afterward having my breakfast
coming again to read additional news.
Nice post. I was checking constantly this blog and I’m impressed!
Extremely helpful information particularly the last part I care
for such info much. I was seeking this certain information for
a long time. Thank you and good luck.
3% last year Let me emphasize, the attrition rates came in approximately throughout the year-end, about
1% — percentage point, 100 basis point versus a women’s health 9 benefits oof chocolate year ago.
My partner and I absolutely love your blog and find the majority of your post’s to be exactly what I’m looking for.
Does one offer guest writers to write content for you personally?
I wouldn’t mind composing a post or elaborating on many of the subjects you write with regards to here.
Again, awesome web log!
Hey I know this is off topic but I was wondering if you knew of any widgets
I could add to my blog that automatically tweet
my newest twitter updates. I’ve been looking for a
plug-in like this for quite some time and was hoping maybe you would have
some experience with something like this. Please let me know if you run into anything.
I truly enjoy reading your blog and I look forward to your new updates.
Some have state-of-the-art graphics and modern gaming action on any angry birds friends cheat soccer or football game.
Angry Birds games have a unique opportunity for candidates to improve one’s brain power.
4 Trackbacks
[...] Read more at IndieMaps . . . Get the code . . . SHARETHIS.addEntry({ title: “E00Parser, an ActionScript 3 Parser for the Arc/Info Export Topological GIS Format (IndieMaps)”, url: “http://kelsocartography.com/blog/?p=1937″ }); [...]
[...] of the “four corners” states) are repeated. There are topological GIS formats, like Arc/Info Export (e00), but geospatial data are rarely distributed in such [...]
[...] ActionScript I would use Edwin van Rijkom’s ESRI SHP parser, my own E00 parser, or some simple custom methods I’ve written to load in KML documents. Tom Carden of Stamen [...]
[...] しかし、ほとんどの地理空間データフォーマットは(E00を除いて)非トポロジです。 (翻訳中) Updated: 2013年9月4日 at 7:26 AM ◀ D3.js バージョン 3.3 がリリースされました。 [...]