Нужна помощь в отображении линейной диаграммы
Пожалуйста, рассмотрите следующий код:
Параметры, которые я использовал:
<cfparam name="Form.startdate" default="#dateformat(now()-5, 'mm/dd/yyyy')#">
<cfparam name="Form.enddate" default="#dateformat(now()-1, 'mm/dd/yyyy')#">
<cfparam name="Form.selectdate" default="#dateformat(now(), 'mm/dd/yyyy')#">
Я использую cfquery:
Информация: MyDatabase = Имя базы данных
События = имя столбца с несколькими различными событиями (первое, второе, третье и т. Д.). В данном случае я только что включил ПЕРВЫЙ.
Отметка времени = имя столбца, который содержит дату и время.
<cfquery datasource = "XX.XX.X.XX" name="qQuery">
SELECT Timestamp , Count(*) as COUNT
FROM MyDatabase WHERE Events = "FIRST"
AND Timestamp >= <cfqueryparam value="#form.startdate#" cfsqltype="cf_sql_date">
AND Timestamp <= <cfqueryparam value="#dateAdd('d', 1, form.enddate)#" cfsqltype="cf_sql_date"> GROUP BY Timestamp;
</cfquery>
Приведенный выше запрос просто отображает одну точку на линейной диаграмме, что очевидно, потому что я использовал предложение count с условием для Events = FIRST.
Я показываю следующее (пожалуйста, рассмотрите следующий код):
<cfform format="flash" preloader ="false">
<cfformgroup type="horizontal">
<cfinput type="dateField" name="startdate" label="Start Date" width="100" value="#form.startdate#">
<cfinput type="dateField" name="enddate" label="End Date" width="100" value="#Form.enddate#">
<cfinput name="submitApply" type="submit" value = "Apply">
<cfinput name="cancel" type="submit" value="Download CSV">
</cfformgroup>
<cfformitem type = "hrule" style="" ></cfformitem>
</cfform>
<cfchart format="flash" chartwidth="500" chartheight="500" scalefrom="0" scaleto="2500" showxgridlines="no" >
<cfchartseries type="line" itemColumn="Timestamp" valueColumn="COUNT" query="qQuery">
</cfchartseries>
</cfchart>
Проблема, с которой я сталкиваюсь:
В веб-браузере ничего не отображается, кроме cfform
поля.:(
Когда я щелкаю по нему правой кнопкой мыши, он говорит, что фильм не загружен.
Пожалуйста, дайте мне знать, если есть вопросы, на которые я могу ответить.
1 ответ
Произошла ошибка при обработке запроса для входной строки: "2013-07-11".
<cfchartseries itemColumn="COUNT" valueColumn="Timestamp" ...>
Значение оси Y должно быть числовым. Строка "2013-07-11" явно не числовая, поэтому ошибка. Похоже, вы случайно поменялись местами itemColumn
а также valueColumn
,
Обновить:
Размещенный код диаграммы прекрасно работает со строками даты и числовыми значениями (как только вы меняете элемент / значение).
<cfset qQuery = queryNew("")>
<cfset queryAddColumn(qQuery, "TimeStamp", "date", listToArray("2013-07-30,2013-08-01,2013-08-02"))>
<cfset queryAddColumn(qQuery, "Count", "integer", listToArray("10,8,6"))>
<cfchart format="flash" chartwidth="500" chartheight="500" showxgridlines="no">
<cfchartseries type="line"
itemColumn="Timestamp"
valueColumn="Count"
query="qQuery" />
</cfchart>
Так что, если это не работает для вас, вы делаете что-то другое в коде, чем то, что вы показали нам. Пожалуйста, обновите ваш вопрос небольшим, автономным примером, демонстрирующим проблему. Также "не работает" очень расплывчатое описание. Вы должны сказать, что происходит и чем оно отличается от того, что вы ожидали. т.е. фактические и ожидаемые результаты.