最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django Highcharts制作圖表

 更新時間:2016年08月27日 10:29:35   投稿:hebedich  
Highcharts圖表控件是目前使用最為廣泛的圖表控件 ,是純JS圖表庫。這篇文章主要介紹了Django Highcharts制作圖表的相關資料,非常的詳細,有需要的小伙伴可以來參考下

在運維工作總很多數據最終的展現方式要用到圖表,畢竟用圖來展示要比一堆數字更直觀些,比如利用率、站點的PV,UV等,大家千萬不要覺得看到很多漂亮的圖就感覺很難,其實真心不是,因為現在有很多前端的繪圖庫,你只需要按它要求的格式(json)提供給前端接口,什么曲線圖、餅圖,還有你從來都不知道的圖都可以生成出來,現在用的比較多的是highcharts,echarts等,django-highcharts是django的一個集成庫,使用它在django里更方便繪制出我們想要的圖表,所以這篇文章就使用它來完成一個超小項目,實現一個站點的PV,UV曲線圖, 另外我一直認為公眾號其實不太合適貼太多的代碼,要看代碼最好還是用專業(yè)的編輯器,如果通篇都是代碼,我估計很多人直接就收藏了,時間久了自己都忘了,起不到真正學習的目的, 所以今天我重點還是講使用步驟,確保下次大家開發(fā)的時候會用,代碼只是輔助,當然核心的我也會全部貼出來,但完整的代碼限于篇幅就不在貼了,另外這篇是需要小伙伴們有django一點點基礎的,如果沒有任何基礎,可能需要先了解下基本mvc的概念,否則你可能會看的云里霧里, 其它不多說了,現在開始,我先介紹下開發(fā)環(huán)境:

python 2.7 + django1.8.2 + mysql (版本隨意)

第一步,安裝django-higchats,這個根據大家使用的環(huán)境即可,pip或直接用pycharm工具安裝都可以。

第二步,新建project 和app

第三步,以上做完,就可以敲代碼了,先建models,就是數據庫表的表結構,日常站點訪問數據PV,UV數據可以插入到這個表里,一會我們要使用。

第四步,圖表模塊代碼編寫,這部分主要是一個類從數據庫表中獲取數據,然后將數據提供給圖形展示類,代碼如下:

class pudata(object):
 
  def __init__(self, dbobj):
    self.dbobj = dbobj
    self.pdays = self.dbobj.objects.all()
 
  def mpvdate(self):
    res = {}
    for v in self.pdays:
      res[v.days] = v.pvisitor
    res = collections.OrderedDict(sorted(res.items(), key=lambda d: d[0]))
    return res
 
  def muvdate(self):
    res = {}
    for v in self.pdays:
      res[v.days] = v.uvisitor
    res = collections.OrderedDict(sorted(res.items(), key=lambda d: d[0]))
    return res
 
class MindgViewPv(HighChartsMultiAxesView):
  p = pudata(mindg)
  title = 'mindg.cn'
  tooltip = {'shared': 'true'}
  chart_type = 'spline'
  categories = p.mpvdate().keys()
 
  @property
  def yaxis(self):
    y_axis = [
    {
      'title': {
        'text': 'PV'
      },
    }
    ]
    return y_axis
 
  @property
  def series(self):
    p = pudata(mindg)
    series = [
      {
      'name': 'mindg.cn',
      'data': p.icypvdate().values()
      }]
    return series
 

第五步,模板層代碼,模板采用ajax方式,從后臺獲取的json數據給highcharts然后繪制曲線圖,代碼如下:

{% extends 'head_css.html' %}
{% load highcharts_tags %}
 
{% block js %}
 <script type="text/javascript">
  $(function (){
    $.getJSON("{% url 'mpv' %}", function(data) {
      $('#container').highcharts(data);
    });
  });
  </script>
 {% endblock %}

有了上面的代碼,就可以通過view函數將mindg.html 渲染出來了,最終圖如下:

關于highcharts的使用就介紹到這里,如有疑問請我直接留言。

相關文章

  • Python MOCK SERVER moco模擬接口測試過程解析

    Python MOCK SERVER moco模擬接口測試過程解析

    這篇文章主要介紹了Python MOCK SERVER moco模擬過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • 詳解Python常用標準庫之os模塊與shutil模塊

    詳解Python常用標準庫之os模塊與shutil模塊

    os系統模塊與shutil文件操作模塊是Python常用的標準庫,本文將通過示例詳細講解一下二者的使用,感興趣的小伙伴可以跟隨小編一起學習一下
    2022-06-06
  • Python類方法總結講解

    Python類方法總結講解

    這篇文章主要介紹了Python類方法總結講解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下
    2021-07-07
  • Python編寫運維進程文件目錄操作實用腳本示例

    Python編寫運維進程文件目錄操作實用腳本示例

    這篇文章主要為大家介紹了Python編寫實用運維進程文件目錄的操作腳本示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • python GUI計算器的實現

    python GUI計算器的實現

    這篇文章主要介紹了python gui計算器的實現,幫助大家更好的理解和學習python gui編程,感興趣的朋友可以了解下
    2020-10-10
  • 解決Pycharm輸入法無法切換中英文問題

    解決Pycharm輸入法無法切換中英文問題

    這篇文章主要介紹了解決Pycharm輸入法無法切換中英文問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • python實現浪漫的煙花秀

    python實現浪漫的煙花秀

    這篇文章主要為大家詳細介紹了python實現浪漫的煙花秀,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 利用Python獲取操作系統信息實例

    利用Python獲取操作系統信息實例

    作為一個運維人員,經常需要獲取系統的的各種信息,使用python會很方便幫助獲得,這篇文章運用實例告訴大家如何利用Python來獲取操作系統的信息,有需要的可以參考借鑒。
    2016-09-09
  • jupyter 添加不同內核的操作

    jupyter 添加不同內核的操作

    這篇文章主要介紹了jupyter 添加不同內核的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • python3+PyQt5重新實現QT事件處理程序

    python3+PyQt5重新實現QT事件處理程序

    這篇文章主要為大家詳細介紹了python3+PyQt5重新實現QT事件處理程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04

最新評論

荣成市| 万全县| 林周县| 南平市| 伊金霍洛旗| 广州市| 盐亭县| 彩票| 黄陵县| 郎溪县| 许昌市| 广饶县| 白水县| 乃东县| 卓尼县| 台南市| 论坛| 正安县| 郴州市| 密山市| 靖宇县| 芒康县| 南漳县| 崇义县| 张家港市| 兴国县| 大方县| 扶沟县| 海晏县| 阿拉善盟| 迭部县| 固安县| 应城市| 丽江市| 上杭县| 大冶市| 隆安县| 耒阳市| 平塘县| 房山区| 黎城县|