IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 使用django实现plt.show()展示的图显示到前端页面 -> 正文阅读

[Python知识库]使用django实现plt.show()展示的图显示到前端页面

win+R打开终端

1.创建虚拟环境

cd /d F:\djangotest

python -m venv djangoenv

2.激活虚拟环境

目录切到djangoenv/Scripts下

activate

3.创建django项目

cd ../..

django-admin startproject data_visualization

4.创建app

cd data_visualization

python manage.py startapp visualization

至此项目应用就创建好了,可以使用pip install django==2.2安装

实现功能

1.配置settings

在INSTALLED_APPS中添加应用

指定模板位置

2.设置urls

在总的urls文件中指定应用

?

?在应用的urls中指定请求执行的路径

?3.编写views.py

import base64
import io
from django.shortcuts import render

# Create your views here.
import pandas as pd
from pymongo import MongoClient
import matplotlib.pyplot as plt
import numpy as np
client = MongoClient(host='192.168.2.220',port=27017)
#指定数据库
mydb = client['ztcm_bid']
col = mydb['ccgp_feibiao']
original_data = pd.DataFrame(col.find())
# print("original_data=",original_data)

def draw_bar(request):
    mydb = client['ztcm_bid']
    col = mydb['ccgp_feibiao']
    df = pd.DataFrame(col.find())
    df1 = df.replace("", np.nan).replace("/", np.nan)
    x = np.array([df.columns[5], df.columns[6], df.columns[13], df.columns[15]])
    print("x=", x, sep='\n')
    counts = np.array([df1['title'].count(), df1['project_number'].count(), df1['project_contact_number'].count(),
                       df1['purchase_address'].count()])
    print("counts=", counts, sep='\n')
    # 第一个参数是x轴的数据,第二个参数是y轴的数据,第三个参数是柱子的大小,默认值是1(值在0到1之间),color是柱子的颜色,alpha是柱子的透明度
    plt.bar(x, counts,0.8, color='r', alpha=0.8)
    # 为每个条形图添加数值标签
    for x, y in enumerate(counts):
        plt.text(x, y + 50, '%s' % y, ha='center')
    plt.xticks(rotation=-20)
    img = io.BytesIO()
    plt.savefig(img,format='png')
    img.seek(0)
    plot_url = base64.b64encode(img.getvalue()).decode()
    print("plot_url=",plot_url)
    # plt.show()
    args = {"plot_url":plot_url}
    return render(request,'draw_bar.html',args)

4.在项目下新建目录templates

?5.启动项目

在terminal中输入

python manage.py runserver

6.在新页面中打开

http://localhost:8000/visualization/draw_bar/

?

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-03 16:08:24  更:2022-03-03 16:10:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:42:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码