Визуализация временных рядов в спиралях с использованием R или Python?

Кто-нибудь знает, как это сделать в R? То есть, представляют эти циклические данные из левого участка в правый участок?

http://cs.lnu.se/isovis/courses/spring07/dac751/papers/TimeSpiralsInfoVis2001.pdf

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

Вот некоторые примеры данных.

Day = c(rep(1,5),rep(2,5),rep(3,5)) Hour = rep(1:5,3) Sunlight = c(0,1,2,3,0,1,2,3,2,1,0,0,4,2,1) data = cbind(Day,Hour,Sunlight) 

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

2 Solutions collect form web for “Визуализация временных рядов в спиралях с использованием R или Python?”

Это кажется довольно близким:

 # sample data - hourly for 10 days; daylight from roughly 6:00am to 6:00pm set.seed(1) # for reproducibility Day <- c(rep(1:10,each=24)) Hour <- rep(1:24) data <- data.frame(Day,Hour) data$Sunlight <- with(data,-10*cos(2*pi*(Hour-1+abs(rnorm(240)))/24)) data$Sunlight[data$Sunlight<0] <- 0 library(ggplot2) ggplot(data,aes(x=Hour,y=10+24*Day+Hour-1))+ geom_tile(aes(color=Sunlight),size=2)+ scale_color_gradient(low="black",high="yellow")+ ylim(0,250)+ labs(y="",x="")+ coord_polar(theta="x")+ theme(panel.background=element_rect(fill="black"),panel.grid=element_blank(), axis.text.y=element_blank(), axis.text.x=element_text(color="white"), axis.ticks.y=element_blank()) 

Я знаю, как это сделать в Python. Я нахожу график рассеяния от matplotlib хорошо для такого рода вещей. Вот пример:

 import matplotlib.pyplot as plt import numpy as np period = 0.5 f = np.arange(0, 100, 0.03) // Data range z = np.sin(f) // Data a = f*np.sin(period*f); b = f*np.cos(period*f); fig = plt.figure() ax = plt.subplot(111) fig.add_subplot(ax) ax.scatter(a, b, c=z, s=100, edgecolors='none') plt.show() 

Вы можете изменить period чтобы изменить количество оборотов в спирали. a и b a спираль, тогда как z содержит фактические данные (в этом примере синусоида).

пример

  • Есть ли файл сценариев csv Python, способный сопоставлять скорость записи данных.table?
  • Переключить имя переменной в python
  • conda - Как установить пакеты R, которые недоступны в «R-essentials»?
  • Уменьшить количество уровней для больших категориальных переменных
  • Интерфейс Python для языка программирования R
  • numpy / scipy эквивалент функции R ecdf (x) (x)?
  • Markdown для воспроизводимых исследований на Python
  • График параллельных координат с пропущенными координатами
  •  
    Interesting Posts for Van-Lav

    Декодировать строку ENCODED unicode в Python

    Перенаправить вывод Python 'print' в Logger

    Нельзя подписывать URL-адреса облачного пользования, используя boto

    Удаленная отладка pydev – завершение кода в интерактивной консоли?

    Почему я получаю сообщение об ошибке при импорте класса?

    Захват акцентированных символов путем изменения определенного регулярного выражения, которое у меня есть в python3

    эффективный способ извлечь несколько строк данных из большого файла данных csv в python

    Почему Python быстрее, чем Ruby?

    pandas 3×3 рассеянная матрица отсутствует ярлыки

    Ограниченная линейная регрессия в Python

    Могу ли я создать модуль расширения Python в D (вместо C)

    Python Numpy – Сложные числа. Есть ли функция для преобразования по полярности в прямоугольник?

    Как постоянно контролировать ритмбокс для изменения трека с помощью python

    Как передать параметр в потоковое задание Python Hadoop?

    Пакетное переименование файлов в каталоге

    Python - лучший язык программирования в мире.