pyecharts 画图归纳

将本地文件导入到Pyecharts:

test = open(filename, 'r')

data = test.readlines()

test.close()

如果遇到无法导入包的情况:

sudo pip install pyecharts == 0.1.9.4

再不行:

sudo apt - get install python3 - tk

pip3 install pyecharts

mysql文件导入Pycharm的代码

import pymysql

一页多图

from pyecharts import Page

导入柱状图Bar

from pyecharts import Bar

导入饼图Pie

from pyecharts import Pie

导入折线图Line

from pyecharts import Line

导入雷达图Radar

from pyecharts import Radar

导入散点图Scatter

from pyecharts import Scatter

导入词云图WordCloud

from pyecharts import WordCloud

将mysql的数据导入pycharm

db = pymysql.connect("要连接的主机地址localhost", "用于登录的数据库用户root", "密码strongs", "要连接的数据库名")

cursor = db.cursor()

sql = "select * from 表名"

try:

cursor.execute(sql)

data = cursor.fetchall()

except:

print("Error!")

db.close()

print(data)
x = [x[0] for x in data]
y = [x[1] for x in data]

page = Page()

柱状图-Bar

设置行名

columns = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]

设置数据

data1 = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]

data2 = [2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]

设置柱状图的主标题与副标题

bar = Bar("柱状图", "一年的降水量与蒸发量", title_color='red', width=1000)

添加柱状图的数据及配置项

bar.add("图标", 列名, 列高(数据), mark_line=["average"], mark_point=["max", "min"])

bar.add("降水量", columns, data1, mark_line=['max'], mark_point=["max", "min"], is_convert=False, area_color='yellow')

bar.add("蒸发量", columns, data2, mark_line=["average"], mark_point=["max", "min"], is_convert=False)

打印输出图表的所有配置项

bar.show_config()

生成本地文件(默认为.html文件)

bar.render('./bar.html')

page.add(bar)

饼图-Pie

设置主标题与副标题,标题设置居中,设置宽度为900

pie = Pie("饼状图", "一年的降水量与蒸发量", title_pos='center', width=900)

加入数据,设置坐标位置为【25,50】,上方的colums选项取消显示

pie.add("降水量", columns, data1, center=[25, 50], is_legend_show=True)

加入数据,设置坐标位置为【75,50】,上方的colums选项取消显示,显示label标签

pie.add("蒸发量", columns, data2, center=[75, 50], is_legend_show=False, is_label_show=True)

pie.show_config()

保存图表

pie.render('./pie.html')

page.add(pie)

折线图-Line

line = Line("折线图", "一年的降水量与蒸发量")

is_label_show是设置上方数据是否显示

line.add("降水量", columns, data1, is_label_show=True)

line.add("蒸发量", columns, data2, is_label_show=True)

line.render('./line.html')

page.add(line)

雷达图-Radar

radar = Radar("雷达图", "一年的降水量与蒸发量")

由于雷达图传入的数据得为多维数据,所以这里需要做一下处理

radar_data1 = [[2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3]]

radar_data2 = [[2.6, 5.9, 9.0, 26.4, 28.7, 70.7, 175.6, 182.2, 48.7, 18.8, 6.0, 2.3]]

设置column的最大值,为了雷达图更为直观,这里的月份最大值设置有所不同

schema = [

("Jan", 5), ("Feb", 10), ("Mar", 10),

("Apr", 50), ("May", 50), ("Jun", 200),

("Jul", 200), ("Aug", 200), ("Sep", 50),

("Oct", 50), ("Nov", 10), ("Dec", 5)

]

传入坐标

radar.config(schema)

radar.add("降水量", radar_data1)

一般默认为同一种颜色,这里为了便于区分,需要设置item的颜色

radar.add("蒸发量", radar_data2, item_color="#1C86EE")

radar.render('./radar.html')

page.add(radar)

散点图-scatter

scatter = Scatter("散点图", "一年的降水量与蒸发量")

xais_name是设置横坐标名称,这里由于显示问题,还需要将y轴名称与y轴的距离进行设置

scatter.add("降水量与蒸发量的散点分布", data1, data2, xaxis_name="降水量", yaxis_name="蒸发量",

yaxis_name_gap=40)

scatter.render('./scatter.html')

page.add(scatter)

词云图-word_cloud

word_cloud = WordCloud(width=1300, height=620)

name = ['Sam S Club', 'Macys', 'Amy Schumer', 'Jurassic World', 'Charter Communications', 'Chick Fil A',

'Planet Fitness', 'Pitch Perfect', 'Express', 'Home', 'Johnny Depp', 'Lena Dunham', 'Lewis Hamilton', 'KXAN',

'Mary Ellen Mark', 'Farrah Abraham', 'Rita Ora', 'Serena Williams', 'NCAA baseball tournament', 'Point Break']

value = [10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112, 965, 847, 582, 555, 550, 462, 366, 360, 282, 273, 265]

word_cloud.add("", name, value, word_size_range=[30, 100], shape='diamond')

word_cloud.show_config()

word_cloud.render()

page.add(word_cloud)

page.render('./all-plots.html')

图表布局

from pyecharts import Grid

设置折线图标题位置

line = Line("折线图", "一年的降水量与蒸发量", title_top="45%")

line.add("降水量", columns, data1, is_label_show=True)

line.add("蒸发量", columns, data2, is_label_show=True)

grid = Grid()

设置两个图表的相对位置

grid.add(bar, grid_bottom="60%")

grid.add(line, grid_top="60%")

grid.render()

结合不同类型图表叠加

from pyecharts import Overlap

overlap = Overlap()

bar = Bar("柱状图-折线图合并", "一年的降水量与蒸发量")

bar.add("降水量", columns, data1, mark_point=["max", "min"])

bar.add("蒸发量", columns, data2, mark_point=["max", "min"])

overlap.add(bar)

overlap.add(line)

overlap.render()

pyecharts画图总结的更多相关文章

  1. pyecharts的使用及总结

    包的下载及配置 这个包的相应的配置较多,版本也不兼容,总结一下 预览:pyecharts画图 pip pyecharts pip 各级别地图(6.7个左右) pip jupyter环境 [为了生成pn ...

  2. ubuntu上pyecharts V1版本环境搭建

    1 背景 今天想用pyecharts画图,在新的环境下使用pip安装之后发现,导入pyecharts模块一直失败,报错如下. 图 1 导入pyecharts错误图 请注意:我这里使用的python版本 ...

  3. 利用pyecharts做地图数据展示

    首先, pip install pyecharts 为了地图上的数据能显示完全,加载好需要的城市地理坐标数据. pip install echarts-countries-pypkg pip inst ...

  4. django使用pyecharts(6)----django加入echarts_增量更新_定长_坐标轴定长

    六.Django 前后端分离_定时增量更新图表(坐标轴定长) 1.安装 djangorestframework linux pip3 install djangorestframework windo ...

  5. django使用pyecharts(5)----django加入echarts_增量更新_定长

    五.Django 前后端分离_定时增量更新图表定长数据 1.安装 djangorestframework linux pip3 install djangorestframework windows ...

  6. django使用pyecharts(4)----django加入echarts_增量更新

    四.Django 前后端分离_定时增量更新图表 1.安装 djangorestframework linux pip3 install djangorestframework windows pip ...

  7. django使用pyecharts(3)----django加入echarts_定时全量更新

    三.Django 前后端分离_定时全量更新图表 1.安装 djangorestframework linux pip3 install djangorestframework windows pip ...

  8. django使用pyecharts(2)----django加入echarts_前后台分离

    二.Django 中使用 pyecharts. 前后端分离 1.安装 djangorestframework linux pip3 install djangorestframework window ...

  9. 数据可视化基础专题(十五):pyecharts 基础(二)flask 框架整合

    Flask 前后端分离 Step 1: 新建一个 Flask 项目 $ mkdir pyecharts-flask-demo $ cd pyecharts-flask-demo $ mkdir tem ...

随机推荐

  1. zz:NETCONF协议详解

    随着SDN的大热,一个诞生了十年之久的协议焕发了第二春,它就是NETCONF协议.如果你在两年前去搜索NETCONF协议,基本得到的信息都是"这个协议是一个网管协议,主要目的是弥补SNMP协 ...

  2. 为什么说 Java 中只有值传递?

    对于初学者来说,要想把这个问题回答正确,是比较难的.在第二天整理答案的时候,我发现我竟然无法通过简单的语言把这个事情描述的很容易理解,遗憾的是,我也没有在网上找到哪篇文章可以把这个事情讲解的通俗易懂. ...

  3. luogu P4065 [JXOI2017]颜色 |随机化+前缀和

    题目描述 可怜有一个长度为 n 的正整数序列 Ai,其中相同的正整数代表着相同的颜色. 现在可怜觉得这个序列太长了,于是她决定选择一些颜色把这些颜色的所有位置都删去. 删除颜色 i 可以定义为把所有满 ...

  4. HDU1944 S-NIM(多个NIM博弈)

    Arthur and his sister Caroll have been playing a game called Nim for some time now. Nim is played as ...

  5. TVP5150 PAL/NTSC ccd cmos 模拟摄像头视频 转换 VGA输出

    新做了一批 视频模块,特此总结下: 解码ic:tvp5150 输入:CVBS  PAL 输出:DVP(bt565  yuv  dvp8  含vs hs) 测试分辨力:(vga输出 640*480) 实 ...

  6. layedit添加首行缩进

    由于在编辑的时候,有首行缩进的需求,并且,如果直接使用空格进行缩进,还会出现layedit看到的效果和实际显示的效果不一致的情况.多方搜索无果,于是决定修改源代码.具体步骤如下: 1.首先找到laye ...

  7. 【MYSQL】安装MySQL端口被占用

    出现问题: 安装mysql时,发现端口被占用 解决方法: 方法一: 修改端口号:3308,3309等都可以 方法二: 按键盘"win+r" → 打开 cmd → 输入netstat ...

  8. vue实现双向绑定的基础方法

    Vue2的组件props通信方式 在Vue2中组件的props的数据流动改为了只能单向流动,即只能由组件外(调用组件方)通过组件的DOM属性attribute传递props给组件内,组件内只能被动接收 ...

  9. Linux---centos7.0安装、配置

    参考:https://blog.csdn.net/qq_37057095/article/details/81240450

  10. 一文搞清楚Minor GC、Major GC 、Full GC 之间的关系

    前言 文章要求读者熟悉 JVM 内置的通用垃圾回收原则.堆内存划分为 Eden.Survivor 和 Tenured/Old 空间,代假设和其他不同的 GC 算法超出了本文讨论的范围. Minor G ...