重发Bqplot是一款用于Jupyter的交互式2D的python绘图库
1 说明:
=====
1.1 Bqplot是用于Jupyter的交互式2D绘图库,其中绘图的每个属性都是一个交互式小部件,只需几行Python代码就可以创建丰富的可视化效果。
1.2 Bqplot构建在widgets框架之上,所以它利用widget基础提供第一个在Python和JavaScript代码之间通信的绘图库。
1.3 Bqplot的可视化是基于D3.js和SVG的,支持快速交互和漂亮的动画。
2 准备:
=====
2.1 官网:https://github.com/bqplot/bqplot https://bqplot.readthedocs.io/en/latest/ https://pypi.org/project/bqplot/
2.2 英文视频介绍:https://channel9.msdn.com/Events/PyData/Seattle2017/BRK10
压缩的视频预览gif版
2.3 安装:pip install bqplot #本机安装 sudo pip3.8 install bqplot #推荐国内源安装 sudo pip3.8 install -i https://mirrors.aliyun.com/pypi/simple bqplot
2.4 环境:
华为笔记本电脑、深度deepin-linux操作系统、谷歌浏览器、python3.8和微软vscode编辑器。
===作图介绍===
注意:基于微软vscode编辑器,代码中的:#%%代表一个cell单元
3 折线图:
=======
3.1 代码:#%% import numpy as np import bqplot.pyplot as plt size = 100 scale = 100. #注意小数点 np.random.seed(0) x_data = np.arange(size) y_data = np.cumsum(np.random.randn(size) * scale) fig = plt.figure(title="First Example") #plt.plot(y_data) #默认折线图,line #plt.plot(y_data,"g-.s") # color=green, line_style=dash_dotted, marker=square plt.plot(y_data,"m:d") # color=magenta, line_style=None, marker=diamond fig #plt.show() #可有可无 # %%
3.2 操作及效果图:
4 散点图:
=======
4.1 代码:#%% import numpy as np import bqplot.pyplot as plt size = 100 scale = 100. np.random.seed(0) x_data = np.arange(size) y_data = np.cumsum(np.random.randn(size) * scale) fig = plt.figure() axes_options = {"x": {"label": "Date", "tick_format": "%m/%d"}, "y": {"label": "Price", "tick_format": "0.0f"}} plt.scatter(x_data, y_data, colors=["red"], stroke="black") fig
4.2 图:
5 直方图:
=======
5.1 代码:#%% import numpy as np import bqplot.pyplot as plt size = 100 scale = 100. np.random.seed(0) x_data = np.arange(size) y_data = np.cumsum(np.random.randn(size) * scale) fig = plt.figure() plt.hist(y_data, colors=["OrangeRed"]) fig
5.2 图:
6 饼图:
=====
6.1 两种饼图代码在一起:#%% #导出模块的cell单元代码块 from bqplot import pyplot as plt from bqplot import topo_load from bqplot.interacts import panzoom import numpy as np import pandas as pd import datetime as dt #%% #普通饼图的代码块 np.random.seed(0) size = 100 y_data_2 = np.cumsum(np.random.randn(size)) plt.figure() d = abs(y_data_2[:5]) plt.pie(d,display_labels="outside", display_values=True, values_format=".0%", labels=list("ABCDEFGHIJ")) plt.show() #%% #空心环状饼图的代码块 data = np.random.rand(6) fig = plt.figure(animation_duration=1000) pie = plt.pie(data, radius=180, sort=False, display_labels="outside", display_values=True, values_format=".0%", labels=list("ABCDEFGHIJ")) #make pie a donut with pie.hold_sync(): pie.radius = 180 pie.inner_radius = 120 fig
6.2 图:
普通饼图
环状饼图
7 柱状图:
=======
7.1 代码:#%% import numpy as np import bqplot.pyplot as plt size = 100 scale = 100. np.random.seed(0) x_data = np.arange(size) y_data = np.cumsum(np.random.randn(size) * scale) import string fig = plt.figure(padding_x=0) axes_options = {"x": {"label": "X"}, "y": {"label": "Y"}} plt.bar(x=list(string.ascii_uppercase), y=np.abs(y_data[:20]), axes_options=axes_options,colors=["MediumSeaGreen"]) fig
7.2 图:
8 箱式图:
=======
8.1 代码:#%% import numpy as np import bqplot.pyplot as plt plt.figure() plt.boxplot(np.arange(10), np.random.randn(10, 100)) plt.show()
8.2 图:
9 ohlc图:
=======
9.1 代码:#%% import numpy as np import bqplot.pyplot as plt import datetime as dt #dates代表x轴坐标为日期 dates = np.arange(dt.datetime(2014, 1, 2), dt.datetime(2014, 1, 30), dt.timedelta(days=1)) #y轴为价格数据 prices = np.array([[ 187.21 , 187.4 , 185.2 , 185.53 ], [ 185.83 , 187.35 , 185.3 , 186.64 ], [ 187.15 , 187.355 , 185.3 , 186. ], [ 186.39 , 190.35 , 186.38 , 189.71 ], [ 189.33 , 189.4175, 187.26 , 187.97 ], [ 189.02 , 189.5 , 186.55 , 187.38 ], [ 188.31 , 188.57 , 186.28 , 187.26 ], [ 186.26 , 186.95 , 183.86 , 184.16 ], [ 185.06 , 186.428 , 183.8818, 185.92 ], [ 185.82 , 188.65 , 185.49 , 187.74 ], [ 187.53 , 188.99 , 186.8 , 188.76 ], [ 188.04 , 190.81 , 187.86 , 190.09 ], [ 190.23 , 190.39 , 186.79 , 188.43 ], [ 181.28 , 183.5 , 179.67 , 182.25 ], [ 181.43 , 183.72 , 180.71 , 182.73 ], [ 181.25 , 182.8141, 179.64 , 179.64 ], [ 179.605 , 179.65 , 177.66 , 177.9 ], [ 178.05 , 178.45 , 176.16 , 176.85 ], [ 175.98 , 178.53 , 175.89 , 176.4 ], [ 177.17 , 177.86 , 176.36 , 177.36 ]]) plt.figure() plt.ohlc(dates, prices) plt.show()
9.2 图:
10 高级图,不放代码了,欣赏一下。
===自己整理并分享出来===
喜欢的人,请点赞、关注、评论、转发和收藏。
何为三十而立?三十而立之年你真的立了吗?文老段你今年多大了,是否还在迷茫未来的生活?古人曰三十而立之年。可是很多人都五十了,也没见立了什么。其实,我们需要搞清楚何为三十而立,再去谈论三十岁之后的事情。在我的理解里,三十而
像彭于晏那样为所欲为!做个斜杠青年究竟有多香?文米粒妈前段时间,彭于晏一张瘦到皮包骨的照片上了热搜,米粒妈看后吓了一跳。原来他是为了拍戏才暴瘦,因为戏中他要扮演一个底层工人,彭于晏为了更加符合戏中形象,他吃素半年,彩椒当零食吃
老公和情人约会抓现行,妻子暴打小三发问你老公满足不了你?文老段俗话说好的婚姻是爱情的天堂,不好的婚姻是爱情的坟墓。确实,有很多人的爱情不害怕经受任何考验,脸上时刻都洋溢着幸福的笑容也有很多人从结婚那一刻开始就掉入深渊,一辈子都活在悲伤的
72岁的她活出27岁的质感,无数明星穿着她的婚纱出嫁文米粒妈前几天,VeraWang品牌创始人婚纱女王王薇薇在纽约刚刚过完了自己72岁的生日。生日宴派对上的她身着一件亮黄色晚礼服,身材纤瘦,长发及腰,宛如妙龄少女。生日派对的阵容更是
婚礼刚结束新娘就准备拿钱跑路,被村里人拦下后,新娘沉默不语文老段不知道大家有没有被骗婚的经历?结婚本来是一件皆大欢喜的事,可是有人却把结婚当成一种生意。前段时间,有网友爆料称一场婚礼刚结束,新娘就迫不及待打算跑路。据悉,河南封丘某村正在进
新闻媒体应该如何赞扬她?疫情不期而至,每天打开手机电脑,疫情的报道就铺天盖地推送过来。除了疫情本身发展情况的报道,也有很多感人的事情发生,让人在恐慌感受到了稳定的力量。其中,女性的身影也在新闻报道中频频出
小三的分手费到底是什么费?一般来说,我不太愿意评论具体个人的家长里短,爱恨情仇,因为在这背后有太多的纠葛和细节都是我们这些吃瓜观众说不知道的,牵扯的利益也常常不局限在当事人双方,而是一定会有更广泛的利益纠葛
活动回顾大创智朋友圈午间一小时专场如何陪伴幼小衔接本次大创智朋友圈午间一小时活动由大创智园区主办,上海家庭时光服务中心承办,感谢大创智园区给家庭时光展示的平台。为切实帮助工作和生活在大创智的白领爸爸妈妈们,缓解因为幼升小带来的困惑
与其保护少年的你,不如让少年接纳不同的你编者按电影少年的你围绕着一场校园霸凌的故事而展开,自上周五上线以来,票房持续高升,在各大社交平台上引发热议,那么在这些让人痛心疾首的霸凌事件背后,霸凌者与被霸凌者之间,较之于家庭教
妈妈谁也别想猜透我的想法临近母亲节,周围的朋友开始讨论起要为自己美腻的(我绝没有拍马屁的嫌疑)母上大人献什么好礼时,各大营销魔鬼们也都相应地推出了不少令人惊喜的物件。前几日,微博热搜上就出现了一套画风清奇
优势累积你身边的家庭幸福课生活不易,致敬我们辛苦的老母亲们自从有了娃,我家就气氛很紧张,明明心里都是为了孩子好但凑在一起就是各种冲突,到底怎样才能在家庭内部达成养育和教育观点以及方法的一致?如果不能一致又该