data= pd.read_csv("https://raw.githubusercontent.com/plotly/datasets/master/2014_usa_states.csv")
#create dict with unique color values
color_dict={}
x=0
for postal in data['Postal']:
if postal not in color_dict:
color_dict[postal]=x
x += 1
#create color list
color_list=[]
for postal in data['Postal']:
color_list.append(color_dict[postal])
fig = go.Figure().add_trace(go.Scatter(x=data['Postal'],
y=data['Population'],
mode='markers',
marker_color=color_list,
marker_colorscale="Rainbow",
text=data['State']))
fig.show()