Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2014, 15:08   #1
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Вопрос HTML/CSS отобразить график по информации (алгоритм или метод)

В общем суть вопроса:
есть шкала времени, 24 часа, она должна умещаться в ширину среднестатического окна браузера (предположим ширина монитора 1280 пикселей максимум)
на шкале должны отображаться промежутки времени, с максимально возможной точностью (исходя из данных "задачи")
Если для удобства разбить "график" на отрезки по пять минут, в котором каждый пиксель будет являтся таким отрезком - получится 12*24 = 288. если пиксель приравнять к 75 секундам, то получится 48*24 = 1152, что достаточно удобно вписывается в цифру 1280.

И так условия вроде есть. Моё решение достаточно примитивное, и посему и возник вопрос его улучшения, или же поиска нового более подходящего способа решения.
в каждой линии (относящейся к 1ному обьекту и его промежуткам "активности/простоя") есть 2 типа наполнителей <span>. Для пустого отрезка(простой) и для заполненного отрезка(активность).

Проблема заключается в том что время начала простоя/активности очень редко будет совпадать с значениями вроде 12.00-13.15 (чтобы четко подходить под отведенные промежутки). Если заполнить каждую линию отрезками суммой в 1152 пиксель то необходимо как то правильно округлить значения, иначе будет либо недобор пикселей (что не очень страшно, но уже неприятно) или же перебор пикселей (всё слетит с катушек).

Вот нужно придумать способ округления значений, либо другую схему отображения отрезков на шкале. Простейший пример прилагаю:
http://limesoft.ru/test1/example.html

Заранее спасибо!
Lime вне форума Ответить с цитированием
Старый 12.04.2014, 16:32   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А зачем пиксель к целому количеству секунд приравнивать?
x=Round(s*m/86400,0)
m - ширина шкалы в пикселях
s - секунда с начала суток
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 12.04.2014, 17:15   #3
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А зачем пиксель к целому количеству секунд приравнивать?
Чтобы шкала была фиксированного размера
Цитата:
Сообщение от Аватар Посмотреть сообщение
x=Round(s*m/86400,0)
m - ширина шкалы в пикселях
s - секунда с начала суток
тут я вообще не понял смысла формулы...

вопрос темы заключается в том, как округлять значения "заполнителей" и "пустышек" (размеры) чтобы не вылезть за границы, либо в том как по другому отобразить нужные промежутки (и при этом так-же не вылезти за границы графика).
Может лучше сделать блоки с абсолютным позиционированием внутри линии (тогда блоки типа "пустышка" не нужны вовсе), или какой то иной способ
Lime вне форума Ответить с цитированием
Старый 12.04.2014, 17:36   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Смысл формулы в приближенном вычислении начала блока относительно нуля шкалы для любой её ширины
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
img отобразить трапецией с помощью css alfaq HTML и CSS 9 21.01.2014 08:25
Как отобразить в Html код страницы? JGalt JavaScript, Ajax 4 29.07.2013 19:25
Отобразить html форму через JS {Shadowevil} JavaScript, Ajax 5 13.03.2013 13:20
TurboPascal - отобразить график функции Лена Лущикова Помощь студентам 0 05.06.2011 14:57
как отобразить тип данных TEXT в CSS tinisto HTML и CSS 2 03.10.2009 09:21