I have a toy network dataset with two types of lines: Pedestrian lines and a metro line.
I have an attribute called speed-kmh, which is 5 more pedestrian lines and 40 for the metro line. I also have another attribute which gives the length of these lines in kilometers.
When creating the network dataset I created a cost attribute called "hours" by dividing these attributes.
When I perform OD analysis on this network dataset, the calculations seem to ignore the metro line and report the hours only considering the pedestrian route.
Here is an illustration (I am sorry for the bad coloring):
- Blue line represents the metro line.
- Dark lines represent the pedestrian lines.
Normally, with the metro line, the distance between the areas in dark blue should be at most 10 minutes. However I am getting 40 minutes which would be normal as a walking time.
Do you have any thoughts on why I might be having this issue?
I can't really tell what's going on in your screenshot. I can't see whether the route is actually traveling on the metro line or if it's using only pedestrian lines.
Assuming it is not using the metro line at all, my guess is it's probably a connectivity issue. If the pedestrian lines and metro line are not connected to one another properly, the traveler will not be able to switch between them. Assuming the start and end locations are on the streets, the traveler can't get onto the metro line, so they just walk through the streets instead.
Here is some documentation to help you understand the connectivity options in a network dataset: https://pro.arcgis.com/en/pro-app/latest/help/analysis/networks/understanding-connectivity.htm
In general, the most common problems are these:
Incidentally, if you are trying to model public transit in a network dataset, we have a more sophisticated way to do that. Learn more in this tutorial: https://pro.arcgis.com/en/pro-app/latest/help/analysis/networks/create-and-use-a-network-dataset-wit...
Thanks a lot @MelindaMorang!
Here are the additoinal steps I took:
I made sure that the metro line and the streets touch each other using the extend tool.
I also used the integrate tool to ensure that lines have vertices wherever they intersect. (My connectivity policy is based on vertices.)
However, I still get the same results and I am a bit puzzled. By connector features, do you mean something else?
By "connector features", I just meant providing some kind of geometry to ensure that the transit lines have a connection to streets at the locations of stops. As long as the Extend Tool did that for you successfully, that should be all you need.
Everything you said make sense. Nothing obvious stands out to me. If you can post your data or some screenshots of your network dataset configuration, I could take a quick look.
Thank you Melinda for being so helpful. Here are my datasets, including the source data for the network, the network dataset, and the neighborhood centroids that I use as origins and destinations (they're from OSM, and the metro line named "Taksim_metro" is my own drawing): (link removed as we fixed the issue)
(I needed to upload them externally since they exceed the maximum file size. Please let me know if you don't prefer this.)
Edit: For reference, the time between "TOMTOM MAH." and "LEVENT MAH." should be something around 20 minutes. It is currently more than an hour which corresponds to walking time.
I took a quick look. I still looks like a connectivity problem to me. Your metro line does not have vertices at the locations where it intersects with the streets, so the network dataset does not allow travel between the streets and the metro line.
Thanks Melinda! I'll retry and specify the x,y tolerance in integrate tool hoping that it will produce something different. Please let me know if there are any other techniques I should give a try.
That is the correct approach for what you're trying to do. If that doesn't work, I suggest you put your data in a file geodatabase and try again. Shapefiles are old and weird, so maybe that's causing an issue. If that still doesn't work, you will probably need to call Support.
Thank you Melinda. I solved it by following these steps:
1) I created a new layer from the metro line, and removed it from the initial layer.
2) Then I used the integrate tool by adding both layers.
3) Finally I merged them back.
Then it work. I guess this means that I was using the integrate tool in a wrong way.