Python: Могу ли я сделать шкалу цветов статической в ​​графике временных рядов с графикой?

Я изучаю случаи COVID с течением времени на карте мира. Прямо сейчас шкала цветов динамическая, а минимальное и максимальное значения меняются каждый день. Я хочу исправить их (возможно, до 0 и до рекордно высокого уровня), чтобы мне было легче сравнивать разные даты друг с другом. Как я могу это сделать?

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import plotly
from datetime import datetime
import plotly.graph_objs as go
from datetime import timedelta
import plotly.offline as offline
from plotly.offline import download_plotlyjs, init_notebook_mode, plot, iplot
df = pd.read_csv('https://raw.githubusercontent.com/owid/covid-19-data/master/public/data/owid-covid-data.csv')

start = datetime.strptime('Jan 1 2020', '%b %d %Y')
df['datum'] = pd.to_datetime(df.date)


df_cleaned = df[df['iso_code'].notna()]
data_slider = []

for datum in df['datum'].unique():
    df_segmented = df_cleaned[df_cleaned['datum']==datum]
    data_each_date = dict(type='choropleth',
                locations = df_segmented['iso_code'],
                z = df_segmented['new_deaths_per_million'],
                
                text = df_segmented['location'],
                colorbar = {'title':'New Deaths per Million'})
    data_slider.append(data_each_date)
 
steps = []
for i in range(len(data_slider)):
    step = dict(method='restyle',
                args=['visible',[False]*len(data_slider)],
                label='Date {}'.format(timedelta(days=1) + start)
                )
    step['args'][1][i]=True
    start = timedelta(days=1) + start
    steps.append(step)


sliders = [dict(active=0, pad={"t": 1}, steps=steps)]

layout = dict(title = 'COVID',
              geo=dict(
                       scope ='world',
                       projection = {'type':'mercator'}
                       ),
              sliders = sliders)

fig =dict(data=data_slider,layout=layout)
plotly.offline.plot(fig)

person Johannes Engelhardt    schedule 08.07.2020    source источник


Ответы (1)


Вроде исправлено с _1 _, _ 2_. Я использовал эту информацию как ссылку. Как сохранить согласованность цветовой полосы на картограмме с изменяющимися данными

for datum in df['datum'].unique():
    df_segmented = df_cleaned[df_cleaned['datum']==datum]
    data_each_date = dict(type='choropleth',
                locations = df_segmented['iso_code'],
                z = df_segmented['new_deaths_per_million'],

                zmax = 50, # update
                zmin = 0, # update
                text = df_segmented['location'],
                colorbar = {'title':'New Deaths per Million'})
    data_slider.append(data_each_date)

введите описание изображения здесь

person r-beginners    schedule 08.07.2020