如何用Matplotlib绘制各种的图形,代码是什么
Admin 2022-08-23 群英技术资讯 484 次浏览
import numpy as np import matplotlib.pyplot as plt %matplotlib inline #写了这个就可以不用写plt.show() plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签 plt.rcParams['axes.unicode_minus']=False #用来正常显示负号 X = np.linspace(0, 2*np.pi,100)# 均匀的划分数据 Y = np.sin(X) Y1 = np.cos(X) plt.title("Hello World!!") plt.plot(X,Y) plt.plot(X,Y1)
X = np.linspace(0, 2*np.pi,100) Y = np.sin(X) Y1 = np.cos(X) plt.subplot(211) # 等价于 subplot(2,1,1) #一个图版画两个图 plt.plot(X,Y) plt.subplot(212) plt.plot(X,Y1,color = 'r')
data = [5,25,50,20] plt.bar(range(len(data)),data)
data = [5,25,50,20] plt.barh(range(len(data)),data)
data = [[5,25,50,20], [4,23,51,17], [6,22,52,19]] X = np.arange(4) plt.bar(X + 0.00, data[0], color = 'b', width = 0.25,label = "A") plt.bar(X + 0.25, data[1], color = 'g', width = 0.25,label = "B") plt.bar(X + 0.50, data[2], color = 'r', width = 0.25,label = "C") # 显示上面设置的 lable plt.legend()
data = [[5,25,50,20], [4,23,51,17], [6,22,52,19]] X = np.arange(4) plt.bar(X, data[0], color = 'b', width = 0.25) plt.bar(X, data[1], color = 'g', width = 0.25,bottom = data[0]) plt.bar(X, data[2], color = 'r', width = 0.25,bottom = np.array(data[0]) + np.array(data[1])) plt.show()
N = 50 x = np.random.rand(N) y = np.random.rand(N) plt.scatter(x, y)
N = 50 x = np.random.rand(N) y = np.random.rand(N) colors = np.random.randn(N) # 颜色可以用数值表示 area = np.pi * (15 * np.random.rand(N))**2 # 调整大小 plt.scatter(x, y, c=colors, alpha=0.5, s = area)
N = 50 x = np.random.rand(N) y = np.random.rand(N) colors = np.random.randint(0,2,size =50) plt.scatter(x, y, c=colors, alpha=0.5,s = area)
a = np.random.rand(100) plt.hist(a,bins= 20) plt.ylim(0,15)
a = np.random.randn(10000) plt.hist(a,bins=50) plt.title("标准正太分布")
x = np.random.randint(20,100,size = (30,3)) plt.boxplot(x) plt.ylim(0,120) # 在x轴的什么位置填一个 label,我们这里制定在 1,2,3 位置,写上 A,B,C plt.xticks([1,2,3],['A','B','C']) plt.hlines(y = np.median(x,axis = 0)[0] ,xmin =0,xmax=3)
# 设置画布颜色为 blue fig, ax = plt.subplots(facecolor='blue') # y 轴数据 data = [[5,25,50,20], [4,23,51,17], [6,22,52,19]] X = np.arange(4) plt.bar(X+0.00, data[0], color = 'darkorange', width = 0.25,label = 'A') plt.bar(X+0.25, data[1], color = 'steelblue', width = 0.25,label="B") plt.bar(X+0.50, data[2], color = 'violet', width = 0.25,label = 'C') ax.set_title("Figure 2") plt.legend() # 添加文字描述 方法一 W = [0.00,0.25,0.50] for i in range(3): for a,b in zip(X+W[i],data[i]): plt.text(a,b,"%.0f"% b,ha="center",va= "bottom") plt.xlabel("Group") plt.ylabel("Num") plt.text(0.0,48,"TEXT")
X = np.linspace(0, 2*np.pi,100)# 均匀的划分数据 Y = np.sin(X) Y1 = np.cos(X) plt.plot(X,Y) plt.plot(X,Y1) plt.annotate('Points', xy=(1, np.sin(1)), xytext=(2, 0.5), fontsize=16, arrowprops=dict(arrowstyle="->")) plt.title("这是一副测试图!")
%pylab inline pylab.rcParams['figure.figsize'] = (10, 6) # 调整图片大小 # np.random.seed(19680801) n_bins = 10 x = np.random.randn(1000, 3) fig, axes = plt.subplots(nrows=2, ncols=2) ax0, ax1, ax2, ax3 = axes.flatten() colors = ['red', 'tan', 'lime'] ax0.hist(x, n_bins, normed=1, histtype='bar', color=colors, label=colors) ax0.legend(prop={'size': 10}) ax0.set_title('bars with legend') ax1.hist(x, n_bins, normed=1, histtype='bar', stacked=True) ax1.set_title('stacked bar') ax2.hist(x, n_bins, histtype='step', stacked=True, fill=False) ax2.set_title('stack step (unfilled)') # Make a multiple-histogram of data-sets with different length. x_multi = [np.random.randn(n) for n in [10000, 5000, 2000]] ax3.hist(x_multi, n_bins, histtype='bar') ax3.set_title('different sample sizes')
import pandas as pd df = pd.DataFrame(np.random.rand(50, 2), columns=['a', 'b']) # 散点图 df.plot.scatter(x='a', y='b')
df = pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d']) # 绘制柱状图 df.plot.bar()
# 堆积的柱状图 df.plot.bar(stacked=True)
# 水平的柱状图 df.plot.barh(stacked=True)
df = pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),'c':np.random.randn(1000) - 1}, columns=['a', 'b', 'c']) # 直方图 df.plot.hist(bins=20)
# 箱线图 df = pd.DataFrame(np.random.rand(10, 5), columns=['A', 'B', 'C', 'D', 'E']) df.plot.box()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
numpy是Python语言的一个扩充程序库,可以支持高级大量的维度数组与矩阵运算。本文给大家介绍的就是关于numpy库的基本使用,具有一定的参考学习价值,下面跟随小编一起来了解一下numpy库的使用吧。
用Python来编写脚本简化日常的运维工作是Python的一个重要用途。在Linux下,有许多系统命令可以让我们时刻监控系统运行的状态,如ps,top,free等等。要获取这些系统信息,Python可以通过subprocess模块调用并获取结果。但这样做显得很麻烦,尤其是要写很多解析代码。
这篇文章主要介绍了python数据结构之递归讲解,递归是解决问题的一种方法,它将问题不断地分成更小的子问题,直到子问题可以用普通的方法解决。通常情况下,递归会使用一个不停调用自己的函数,下面来看看文章对此的详细介绍吧
在做网站项目时,经常会使用脚本生成sitemap, 便于爬虫爬取,有利于SEO。 那么如何使用Python来生成sitemap呢?下面我们来研究一番。安
这篇文章主要介绍了Python如何对图像补全并分割成多块补丁,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008