Since you posted your code, and asked for contructive comments.....
First off, congratulations. You have programmed a working Traffic light program. For many people (students and professional PLC programmer), this would be the end of the story.
It's good that for you, this is only the beginning.
One thing that alway happens to PLC programs is that they get modified. Right now, your program is set to a rigid 120/120 NS - EW split of traffic, with the 120 split into 80/40 green yellow both ways.
If you want to make the N/S green last for 200, all you need to do is change T4:1.ACC, right?
And if you wanted to make the E/W green last for 200, all you would need to do is change T4:3.ACC to 200, right?
Whoops, doing that last would only mean that there would be no E/W yellow after 120. Tou need to change T4:0.ACC to 280 in addition to T4:3. Could this be a problem?
===========
One thing that most people don't notice about real traffic lights is that there is a short period of time where both N/S and E/W red lights are on. This allows the intersection to clear of all those cars who "ran the yellow". Your logic has the two reds being exclusive. How would you go about adding that in?
===========
There is one PLC scan, at the end of the scan where T4:2 is done, where you have NO N/S lights set. So for one scan, the drivers don't know what to do. Now it's true that this is a whopping 5 msec, you might want to think about this.
===========
One suggestion: separate your sequence Actions from your Transitions.
You are using the Action (that N/S Red is on) to drive the entire E/W sequence. While this is certainly a common enough practice, your program would be a bit more robust if you used some internal (B3) bits in addition to the timer bits to transition the sequence. Once the sequence works, you can then figure out which outputs get driven by which steps in the sequence.
==========
My last comment: You need more annotation. Describe what each rung IS SUPPOSED TO DO (I can read what it does - but sometimes what the programmer intends doesn't match what gets coded.
Don't say:
This rung turns on the N/S red light as longs as T4:2 isn't done for the duration of T4:0
but something more along the lines of:
First step in a 3-step cascading timer sequencer. Sequencer controls all N/S traffic. Step 1 = Red N/S light. E/W traffic control will occur during this step.
Don't be afraid of saying too much. This is why colleges make Engineering students take all those Engish classes - to learn how to write. Use what you've learned.
==========
Good job overall. What I like about this solution is that it doesn't look like you copied from some of the published sources, but come up with it on your own.