Нужна помощь в отображении линейной диаграммы

Пожалуйста, рассмотрите следующий код:

Параметры, которые я использовал:

<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> 

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

Другие вопросы по тегам