python画50个图-python 实现在一张图中绘制一个小的子图方法
有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示:
具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法。
import matplotlib.pyplot as plt
import MySQLdb as mdb
import numpy as np
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
from mpl_toolkits.axes_grid1.inset_locator import mark_inset
def graph():
# 连接数据库
conn = mdb.connect(host='127.0.0.1', port=3306, user='root', passwd='root', db='alibaba_trace', charset='utf8')
# 如果使用事务引擎,可以设置自动提交事务,或者在每次操作完成后手动提交事务conn.commit()
conn.autocommit(1) # conn.autocommit(True)
# 使用cursor()方法获取操作游标
cursor = conn.cursor()
# 因该模块底层其实是调用CAPI的,所以,需要先得到当前指向数据库的指针。
try:
cursor.execute("select machineID, count(id) from batch_instance where machineID != 0 group by machineID")
records = cursor.fetchall()
list_records = list(records)
except:
import traceback
traceback.print_exc()
# 发生错误时回滚
conn.rollback()
finally:
# 关闭游标连接
cursor.close()
# 关闭数据库连接
conn.close()
res = []
res[:] = map(list, list_records)
machineID = [x[0] for x in res]
instance_num = [x[1] for x in res]
print(max(instance_num))
print(min(instance_num))
fig = plt.figure()
ax1 = fig.add_subplot(1, 1, 1)
# # cdf
# hist, bin_edges = np.histogram(instance_num, bins=len(np.unique(instance_num)))
# cdf = np.cumsum(hist / sum(hist))
# ax1.plot(bin_edges[1:], cdf, color='red', ls='-')
# ax1.set_xlabel("instance number per machine")
# ax1.set_ylabel("portion of machine")
# plt.savefig('../../imgs_mysql/cdf_of_machine_instance.png')
# # 直方图
ax1.hist(instance_num, normed=False, alpha=1.0, bins=100)
ax1.set_xlabel('instance number per machine')
ax1.set_ylabel('machine number')
# cdf 要添加的子图
axins = inset_axes(ax1, width=1.5, height=1.5, loc='upper left')
# ax1 大图
# width height分别为子图的宽和高
# loc 为子图在大图ax1中的相对位置 相应的值有
# upper left
# lower left
# lower right
# right
# center left
# center right
# lower center
# upper center
# center
hist, bin_edges = np.histogram(instance_num, bins=len(np.unique(instance_num)))
cdf = np.cumsum(hist / sum(hist))
axins.plot(bin_edges[1:], cdf, color='red', ls='-')
axins.set_yticks([])
# axins.set_xlabel("instance number per machine")
# axins.set_ylabel("portion of machine")
plt.savefig("../../imgs_mysql/hist_of_machine_instance")
plt.show()
if __name__ == '__main__':
graph()
以上这篇python 实现在一张图中绘制一个小的子图方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
python画50个图-python 实现在一张图中绘制一个小的子图方法相关推荐
- python画简便的图-python 实现在一张图中绘制一个小的子图方法
有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示: 具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法. import matplotlib. ...
- python 子图_python 实现在一张图中绘制一个小的子图方法
有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示: 具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法. import matplotlib. ...
- python一张图-python 实现在一张图中绘制一个小的子图方法
有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示: 具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法. import matplotlib. ...
- python turtle 画老鼠_通过Turtle库在Python中绘制一个鼠年福鼠
turtle库是一个很经典的绘图库,其最初来自于1967年创造的logo编程语言,之后被Python编写放到了Python的内置模块中.网络上有很多借助于turtle绘制精美图像的案例.比如小猪佩奇. ...
- python中turtle画老虎_通过Turtle库在Python中绘制一个鼠年福鼠
turtle库是一个很经典的绘图库,其最初来自于1967年创造的logo编程语言,之后被Python编写放到了Python的内置模块中.网络上有很多借助于turtle绘制精美图像的案例.比如小猪佩奇. ...
- python基础教程:通过Turtle库在Python中绘制一个鼠年福鼠
这篇文章主要介绍了通过Turtle库在Python中绘制一个鼠年福鼠,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 turtle库是一个很经典的绘图库,其最初来自 ...
- 【实践】origin画局部放大图,并和原图在一张图中
[实践]origin画局部放大图,并和原图在一张图中 新建项目只有两列,列数不够通过右键选择Add New Column增加新列. 新增的列默认为Y(对应纵坐标),可以选中新增列右键,选择Set As ...
- origin多图叠加_origin 将两张图放在一起??
1.进入后软件界面后出现一个表格,上方的X和Y分别表示X轴,Y轴.为了方便快速,我就直接导入现成的数据,选择 plot→line 绘图.如下图所示,可以看到有四幅图. 2.点击上方菜单栏中的Graph ...
- python画50个图-Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢?
Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢? 可视化图表,有相当多种,但常见的也就下面几种,其他比较复杂一点,大都也是基于如下几种进行组合,变换出来的.对于初学者来说,很容易被这官网上 ...
最新文章
- log4j2的核弹漏洞是如何被发现的?
- Flutter RichText支持自定义文本溢出效果
- 推荐搜索炼丹笔记:向量召回 MIND多兴趣双塔模型
- 一个透明的shader
- FileOutputStream 类 和 FileInputStream类的简单介绍,附代码演示。以及一个复制媒体文件的小程序。
- 【英语学习】【WOTD】zero-sum 释义/词源/示例
- androidStudio使用卡顿
- hadoop安装小记
- WIN7 VS2010下配置 CGAL-4.7
- cognos的HTMl显示,cognos利用html项目和提示元素结合
- Python学习手册--第一部分(使用入门)
- ARP欺骗-教程详解
- js 原生 导出 excel
- μC/OS源码官网下载链接
- TT 的旅行日记(Dijkstra)
- Educational Codeforces Round 61 (Rated for Div. 2) D. Stressful Training(贪心+二分)
- 机器学习第三课--LWR的疑惑与想法
- matlab from workplace,关于使用From workspace的问题
- python pandas 怎么判断一天是否为工作日+计算距离特定时间之间的天数
- C#文本型数值转换为数值类型