发布于2019-08-07 19:30 阅读(646) 评论(0) 点赞(1) 收藏(3)
首先都得导模块。
import numpy as np import pandas as pd import matplotlib.pyplot as plt from pandas import Series,DataFrame
x=[1,2,3,4,5] y=[2,4,6,8,10] plt.plot(x,y)
x = np.arange(-np.pi,np.pi,0.2) y = x**2 plt.plot(x,y)
x = np.arange(-np.pi,np.pi,0.2) y = np.cos(x) plt.plot(x,y)
这里得到图形取决于x跟y的关系
plt.plot(x,y)
plt.plot(x+3,y+3)
plt.plot(x,y,x+10,y+10)
a=plt.subplot(row,col,loc)创建曲线图对象 a.plot(x,y) ax1 = plt.subplot(2,2,1) ax1.plot(x,y) ax1.grid() ax2 = plt.subplot(2,2,2) ax2.plot(x,y) ax3 = plt.subplot(2,2,3) ax3.plot(x,y) ax4 = plt.subplot(2,2,4) ax4.plot(x,y)
通过设置plt.axis('off')可以把坐标轴刻度给关闭,我们就只会看到图,而看不到刻度
plt.figure(figsize=(a,b)) a:x刻度比例 b:y刻度比例 (2:1)表示x刻度显示为y刻度显示的2倍 plt.figure(figsize=(8,18)) plt.plot(x,y)
plt.xlabel('xxx') plt.ylabel('yyy') plt.title('ttt') plt.plot(x,y)
5.1 分别在plot函数中添加label参数,在调用plt.legend()方法显示
plt.plot(x,y,label='aaa') plt.plot(x+3,y+3,label='bbb') plt.legend()
5.2 直接在legend()方法中传入字符串列表
plt.plot(x,y,x+3,y+3) plt.legend(['aaa','bbb'])
5.3 还可以设置legend()方法的参数调整图例的位置和显示样式
loc参数用于设置图例标签的位置,一般在legend函数内
ncol控制图例中有几列,在legend中设置ncol
plt.plot(x,y,x+3,y+3) plt.legend(['aaa','bbb'],loc=3,ncol=2)
使用figure对象的savefig函数来保存图片 fig = plt.figure()---必须放置在绘图操作之前 figure.savefig的参数选项 filename:含有文件路径的字符串或Python的文件型对象。图像格式由文件扩展名推断得出,例如,.pdf推断出PDF,.png推断出PNG (“png”、“pdf”、“svg”、“ps”、“eps”……) dpi:图像分辨率(每英寸点数),默认为100 facecolor ,打开保存图片查看 图像的背景色,默认为“w”(白色) fig = plt.figure() plt.plot(x,y,x+3,y+3) plt.legend(['aaa','bbb'],loc=3,ncol=2) fig.savefig('./img.png',dpi=500)
color或c:颜色,如‘r’或‘red’红色,‘g’绿色;也可以是十六进制,如'#eeefff';还可以RGB元祖,(0.2,0.3,0.4),值只能是0到1 alpha透明度 参数linestyle或ls线型 参数linewidth或lw线宽 marker点型 markersize点的大小
是一个特殊的柱状图,又叫做密度图。
【直方图的参数只有一个x!!!不像条形图需要传入x,y】
plt.hist()的参数
bins :直方图的柱数,可选项,默认为10
color :指定直方图的颜色。可以是单一颜色值或颜色的序列。如果指定了多个数据集合,例如DataFrame对象,颜色序列将会设置为相同的顺序。如果未指定,将会使用一个默认的线条颜色
orientation :通过设置orientation为horizontal创建水平直方图。默认值为vertical
data=[1,2,3,2,3,1,4,5,2,2] plt.hist(data,bins=10) #data数据时1到5,所以它会把1到5之间分成11个区域,把每个区域所包含数据的个数给统计出来
- 参数:第一个参数是索引。第二个参数是数据值。第三个参数是条形的宽度 - width 纵向设置条形宽度 - height 横向设置条形高度 bar()纵向、barh()横向
data1=[2,4,1,5] data2=[3,5,1,6] plt.bar(data1,data2)
plt.barh(data1,data2)
饼图主要有两种,取决于第一个数据参数,首先数据的是一个列表,但列表中出现整数时,每块占比等于自身值除以所有值总和,这种情况下占比总和为1;当每个值都是0到1之间,而且总和小于等于1,那么每个的占比就是自身值,这种情况下,占比总和就不一定为1了。
plt.pie([2,4,6]) #表示的是2占12的比例,4占12的比例,6占12的比例
plt.pie([0.2,0.4,0.1])#表示0.1占10%,0.2占20%,0.4占40%
饼图阴影、分裂等属性设置 #labels参数设置每一块的标签; #labeldistance参数设置标签距离圆心的距离(比例值) #autopct参数设置比例值小数保留位(%.3f%%); #pctdistance参数设置比例值文字距离圆心的距离 #explode参数设置每一块顶点距圆心的长度(比例值,列表); #colors参数设置每一块的颜色(列表); #shadow参数为布尔值,设置是否绘制阴影 #startangle参数设置饼图起始角度
3.1 给每一块设置标签
arr=[2,4,6] plt.pie(arr,labels=['a','b','c'])
3.2 给标签设置离中心的距离
arr=[2,4,6] plt.pie(arr,labels=['a','b','c'],labeldistance=0.5)
3.3 数值表示每块的占比,并设置占比离中心的距离
arr=[2,4,6] plt.pie(arr,labels=['a','b','c'],labeldistance=0.5,autopct='%.2f%%',pctdistance=0.8)
3.4 设置每块顶点离中心的距离
arr=[2,4,6] plt.pie(arr,labels=['a','b','c'],labeldistance=0.5,autopct='%.2f%%',pctdistance=0.8,explode=[0.2,0.4,0.3])
散点图需要两个参数x,y,但此时x不是表示x轴的刻度,而是每个点的横坐标!
scatter()
x = np.random.random(size=(100)) y = np.random.random(size=(100)) plt.scatter(x,y)
1,meshgrid()和散点图结合扩展
import matplotlib.pyplot as plt import pandas as pd import numpy as np x1=np.arange(1,5,0.01) y1=np.arange(1,5,0.01) arr1=np.meshgrid(x1,y1)[0] arr2=np.meshgrid(x1,y1)[1] plt.scatter(arr1,arr2)
作者:djhsj7
链接:https://www.pythonheidong.com/blog/article/12468/81084eee6af1bfe6b298/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!