Javascript must be enabled in your browser to use this page.
Please enable Javascript under your Tools menu in your browser.
Once javascript is enabled Click here to go back to �нтеллектуальная Кобринщина

Display Data Dynamically - Wolfram Mathematica

Отображение данных в реальном времени

Mathematica может собирать, обрабатывать и выводить на экран данные в реальном времени. Встроенный в Mathematica доступ к обширнейшим массивам тщательно отобранных данных предлагает к Вашим услугам колоссальный объем информации "здесь и сейчас".

Воспользуемся функцией FinancialData для получения самой последней стоимости акций компании General Electric (GE):

In[6]:=

DisplayDataDynamicallyRU_2.gif

In[7]:=

DisplayDataDynamicallyRU_3.gif

Out[7]=

DisplayDataDynamicallyRU_4.gif

Повторное вычисление price даст обновленную стоимость акций:

In[8]:=

DisplayDataDynamicallyRU_5.gif

Out[8]=

DisplayDataDynamicallyRU_6.gif

Использование функции Dynamic вместе с опцией UpdateInterval позволит Вам запрашивать информацию о текущей стоимости акций GE через ре гулярные промежутки времени.

В этом примере, стоимость акций GE запрашивается и отображается каждые 2 секунды:

In[9]:=

DisplayDataDynamicallyRU_7.gif

Out[9]=

DisplayDataDynamicallyRU_8.gif

Для большей наглядности, Вы можете добавить в вывод на экран метку времени, чтобы отобразить когда были загружены данные о стоимости. В предваряюшем стоимость списке, метка времени показывает год, месяц, день, час, минуты и секунды, когда данные о стоимости были загружены последний раз:

In[10]:=

DisplayDataDynamicallyRU_9.gif

In[11]:=

DisplayDataDynamicallyRU_10.gif

Out[11]=

DisplayDataDynamicallyRU_11.gif

Из-за того, что опция UpdateInterval жестко закодирована, обновление происходит даже в том случае, если стоимость не изменяется.

Сохраним эти значения стоимости в переменной data. Вы сможете использовать эту переменную позже, для создания визуального отображения значений стоимости:

In[12]:=

DisplayDataDynamicallyRU_12.gif

Out[13]=

DisplayDataDynamicallyRU_13.gif

Теперь, покуда результат ячейки вывода будет отображаться, самое последнее значение стоимости акций GE будет добавляться к data. Опция TrackedSymbols необходима, чтобы предотвратить срабатывание динамического вычисления при сохранении значений стоимости.

Вы можете использовать эту идею для создания динамической визуализации, отображающей изменение стоимости акций GE с момента вычисления выражения.

С ростом количества информации в data, эта визуализация потенциально будет требовать все больше времени для отображения. Динамическое обновление по умолчанию происходит с интервалом в шесть секунд. Вы можете обойти это, установив для опции SynchronousUpdating значение False:

In[14]:=

DisplayDataDynamicallyRU_14.gif

Out[14]=

DisplayDataDynamicallyRU_15.gif