الرسوم البيانية مستخدمين جدد حسب التاريخ في تطبيق القضبان باستخدام السير
-
19-09-2019 - |
سؤال
أرغب في تطبيق رسم بياني متداول يعرض مستخدمين جدد يوما بعد آخر 7 أيام باستخدام السير.
لقد حصلت على تثبيت السير:
أنا تكافح للحصول على ذهني حول كيفية التنفيذ.
لدي مجموعة من المستخدمين الذين أريد رسمهم:
users = users.all (: الشروط => {: creatic_at => 7.days.ago.time.zone.now})
لا يمكن أن نرى الطريقة الصحيحة لتنفيذ: Data_method لتدليلها بواسطة تاريخ Created_AT.
أي شخص فعل هذا أو ما شابه مع السير؟
أي شخص أكثر ذكاء مني قادر على شرح هذا بعد النظر إلى صفحة عينة السير (مرتبطة أعلاه)؟
المحلول
أفترض أنك تحاول إظهار عدد المستخدمين الجدد يوما بعد يوم في آخر 7 أيام. إذا كان الأمر كذلك يمكنك القيام بما يلي
رمز تحكم
# declare a struct to hold the results
UserCountByDate = Struct.new(:date, :count)
def report
@user_counts = User.count( :group => "DATE(created_at)",
:conditions => ["created_at >= ? ", 7.days.ago],
:order => "DATE(created_at) ASC"
).collect do |date, count|
UserCountByDate.new(date, count)
end
end
عرض الرمز
<div id="chart"></div>
<%= Seer::visualize(
@user_counts,
:as => :column_chart,
:in_element =>'chart',
:series => {
:series_label => 'date',
:data_method => 'count'
},
:chart_options => {
:height => 300,
:width => 100 * @user_counts.size,
:is_3_d => true,
:legend => 'none',
:colors => "[{color:'#990000', darker:'#660000'}]",
:title => "New users in last 7 days",
:title_x => 'date',
:title_y => 'count'
}
)
-%>
ال data_method
يجب أن تكون موجودة في كل صف من الصفيف المستخدم كإدخال للمخطط. ال ActiveRecord count
طريقة إرجاع التجزئة، والتي يتم تحويلها إلى مجموعة من struct
التي تستجيب ل date
و count
أساليب.