Requirement to allow time slider for date BCE

02-01-2021 12:04 AM
Status: Open
Labels (1)
New Contributor III

I am a long time ArcGIS user and currently doing a Phd in Archaeology. As you know many archaeologists are using GIS and as you can imagine time is an issue.

Would it be possible to facilitate the inclusion of BCE/BC dates, many of these would only require  +/-YYYY format. 

The dialog on ArcGIS Pro seems to provide for stepping by centuries, but the calendar widget seem limited.

PS as an old ArcMap User, I'm a convert.


Paul Prevedoros  


Hi, same idea /problem from me as GIS User and Teacher with Classics / Ancient Rome or Greek topics... 

it would be very, very helpfull to have an easier tool to define historical epoches or just even years in ArcPro. 

Especialy when beginners (students of History) work with historical data!


Wolfgang Moschek


I would also love it if they would work! I ended up chatting with tech support recently about it - we have a couple of projects that map locations in China the frequently require BCE dates.

The only workaround I've found so far - when we build time maps, arbitrarily assign dates just for the time bar purpose. First I'll fill in all of the CE dates, and then backfill made-up dates just so they appear visually correct on the time bar.



I'll add a "Display Date" for the date value that someone actually sees when the click on data.

It causes the time bar to look a little weird, but visually - it looks correct!


I had a solution which involved using Attribute Rules. I have a from Date and a to Date in which you enter the year ie -275 for 275BCE by entering this number two other fields are populated the label field with a value of 275 BCE and a time for the slider.

The slider code is


var dDate
var lTime = ($feature.FromYear * 100000)
dDate = Date(lTime)
return dDate

The 100000 can adjusted

For Label


if ($feature.FromYear < 0) {
var tYear = ""
if ($feature.FromYear < -212000000) {
return "Number Out of Range"
if ($feature.FromYear < -9999) {
tYear = Text(Abs($feature.FromYear), '#,###') + " BCE"
} else {
tYear = Text(Abs($feature.FromYear) , '####') + " BCE"
return tYear
if ($feature.FromYear > 0) {
var tYear = ""
tYear = $feature.FromYear + " CE"
return tYear
if ($feature.FromYear == 0) {
return $feature.FromYearLabel

The thing here that he value a filled automatically

The Table appears like this



The code is simple and anyone can adjust it to their needs


@PaulPrevedoros1 Thank you for sharing!

Do you have an example of what it looks like on the animated time bar? I’m more specifically interested in the time bar in ArcGIS Online! In the past whenever I’ve tried it with anything resembling negative numbers, the time slider still just defaults to a positive whole number or the data doesn’t appear. Just curious on what it shows when it’s set up!




I cheated because I had  a Featureclass with a label polygon which was also sensative to the slider and thus would label the within the box 

Not very elegant but worked, I could not work out how to relabel slider, it seems possible but I couldn't work it out in time




That makes sense! Thank you for sharing!


Hi all,

The short version on this issue is that “really old time values” are not well supported in databases, Microsoft controls, and so on.   We recommend using Range with a numeric field for these workflows.

You could try setting up Range right now on Pro 3.0 and earlier, and coming in ArcGIS Pro 3.1 (late February 2023) we enhanced Range to support a from-field and a to-field, which gets it very close to parity with time-slider capabilities. Once 3.1 is available, give the new from-to field Range to see how it goes with your workflows.

Thank you. 


@KoryKramer thank you for letting us know!

Do you have any documentation on how to set this up for ArcGIS Online? We have a lot of brand new users that don't have access to ArcGIS Pro - so we have to do a lot of work in spreadsheets for the most part.


I think that the solution above should work for ArcGIS Online, since the labelling is time dependant, and the time is an artificial time that is converted to the BCE time.

I am investigating a more elegant solution


@SaraJL it looks like the range slider is not available in ArcGIS Online, though there are others looking for it. Add your support here