matplotlib常见绘图基础代码小结:折线图、散点图、条形图、直方图、饼图
一、折线图
二、散点图
三、条形图
四、直方图
五、饼图
一、折线图
折线图用于显示随时间或有序类别的变化趋势
from matplotlib import pyplot as plt x = range(2, 26, 2)
y = [15, 13, 14.5, 17, 20, 25, 26, 26, 27, 22, 18, 15] # 设置图片大小
plt.figure(figsize=(20, 8), dpi=180)
# 绘制图形,plot折线图
plt.plot(x, y)
# 保存图形
plt.savefig("14.png")
# 展示图形
plt.show()

二、散点图
散点图可以显示若干数据系列中各数值之间是否存在相关性
坐标系中,每个值用一个点表示
import matplotlib.pyplot as plt # 传统方式绘制
'''
plt.plot(
[3,5,8,10,32,12,9,6,21,22,23,25,25],
[5,4,2,12,44,10,2,8,21,22,23,24,25],
'o' #点类型为o
)
plt.title('Simple Scatter')
''' # 面向对象方式绘制
fig,ax = plt.subplots()
ax.plot(
[3,5,8,10,32,12,9,6,21,22,23,25,25],
[5,4,2,12,44,10,2,8,21,22,23,24,25],
'o' #点类型为o
)
ax.set_title('Simple Scatter') plt.show()

三、条形图(横向:条形图,纵向:柱状图)
柱状图用来比较各独立类别下的某单独数据的大小
import matplotlib.pyplot as plt x = [1,2,3,4,5]
y = [3,6,1,8,2] width = 0.5 plt.bar(
x,
y,
width,
color='r'
) plt.xticks(x,['a','b','c','d','e']) plt.show()

四、直方图
直方图能直观表达数据的分布情况,一般用来表示同等区间内,某类数值出现的频率
直方图与柱状图的区别:
直方图:分区之间连续无间断,表示连续变量;值用矩形面积表示
条形图:各柱之间有间隙,表示孤立的、不连续分类变量;值用矩形长度表示
import numpy as np
import matplotlib.pyplot as plt np.random.seed(0) #随机种子
mu,sigma = 100,20 #均值和标准差
a = np.random.normal(mu,sigma,size=100) #生成一个 均值/方差 给定的正态分布数组 plt.hist(
a, #直方图数据
20, #直方的个数
normed=1, #将y轴默认的数值出现个数归一化为出现的概率
histtype='stepfilled', # stepfilled填充面积,step只有线条
facecolor='b',
alpha=0.75
)
plt.title('Histogram') plt.show()

五、饼图
饼图用于显示各项相对总和的百分比大小
import matplotlib.pyplot as plt labels = ['class1','class2','class3','class4'] #名称
sizes = [15,30,45,10] #比例
explode = (0,0.1,0,0) #突出第二块,突出比例0.1 plt.pie(
sizes, #百分比
explode=explode, #突出比例
labels=labels, #名称
autopct='%1.1f%%', #显示百分比方式
shadow=False, #阴影效果
startangle=90 #饼图起始的角度,度数,默认0为右侧水平180度开始,逆时针旋转
)
plt.axis('equal') #正圆形饼图,x/y轴尺寸相等.默认是扁图, plt.show()

小结:
#### 1.数据分析是什么
- 从大量的数据中寻找规律和结论,为后续的决策提供依据
#### 2.数据分析的流程
- 问题 ---》准备数据---》分析数据---》得出结存---》图形化的展示出来
#### 3.matplotlib如何绘制折线图,和散点图,折线图和散点图分别能表示的什么
- x是所有的坐标的x值的一个列表(的可迭代对象)
- y是所有的坐标的y值的一个列表(的可迭代对象)
- pyplot.plot(x,y) #绘制折线图 (变化)
- pyplot.scatter(x,y) #绘制散点图 (关系和联系,呈现离群点)
#### 4.matplotlib如何显示中文
```python
from matplotlib import font_manager
my_font = font_manager.FontProperties(fname="")
pyplot.xticks(fontproperties=my_font)
pyplot.legend(prop=my_font)
```
#### 5.matplotlib如何在x轴和y轴上显示我们自定义的内容
- 当刻度太稀疏或者是太密集
- pyplot.xticks()
- x轴和y轴显示字符串
- pyplot.xticks([1,2,3,4,],["str1","str2","str3","str4"])
#### 6.matplotlib如何设置图片的大小和保存图片到本地
- pyplot.figure(figsize = (20,8),dpi=80)
- pyplot.savefig("./a.png")
#### 7.设置图例
- 每次绘制的时候需要给label这个参数传值
- pyplot.legend(loc,prop=my_font)
#### 8.设置网格
- pyplot.grid(alpha=0.4)
matplotlib常见绘图基础代码小结:折线图、散点图、条形图、直方图、饼图的更多相关文章
- MATLAB之折线图、柱状图、饼图以及常用绘图技巧
MATLAB之折线图.柱状图.饼图以及常用绘图技巧 一.折线图 参考代码: %图1:各模式直接成本预测 %table0-table1为1*9的数组,记录关键数据 table0 = data_modol ...
- php 生成饼状图,折线图,条形图 通用类
生成饼状图,折线图,条形图通用的php类,这里使用的是百度 Echart. Echart 官方网站 http://echarts.baidu.com/ <?php class Echarts ...
- php 生成饼状图,折线图,条形图 通用类 2
生成饼状图,折线图,条形图通用的php类,这里使用的是国外的 HighCharts,前台页面别忘了调用HighCahrt js HighCharts中文网站 http://www.hcharts. ...
- Python--matplotlib 绘图可视化练手--折线图/条形图
最近学习matplotlib绘图可视化,感觉知识点比较多,边学习边记录. 对于数据可视化,个人建议Jupyter Notebook. 1.首先导包,设置环境 import pandas as pd i ...
- matplotlib库的基本使用与折线图
matplotlib:最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建 基本使用: x和y的长度必须一致 figure()方法用来设置图片大小 x,y ...
- Matplotlib中plot画点图和折线图
引入: import matplotlib.pyplot as plt 基本语法: plt.plot(x, y, format_string, **kwargs) x:x轴数据,列表或数组,可选 y: ...
- MSChart绘图控件中折线图和柱形图画法
首先在前台拖入一个名为chart1的MSChart控件 //折线图 string strLegend = "Legend1"; Legend lg = new Legend(str ...
- Jquery画折线图、柱状图、饼图
1.今天做了一个折线图,首先需要导js文件.这里有一个demo:http://files.cnblogs.com/files/feifeishi/jquery_zhexiantubingtuzhuzh ...
- jqPlot图表插件学习之折线图-散点图-series属性
一.准备工作 首先我们需要到官网下载所需的文件: 官网下载(笔者选择的是jquery.jqplot.1.0.8r1250.zip这个版本) 然后读者需要根据自己的情况新建一个项目并且按照如下的方式加载 ...
随机推荐
- 系统管理员应该知道的20条Linux命令
如果您的应用程序不工作,或者您希望在寻找更多信息,这 20 个命令将派上用场. 在这个全新的工具和多样化的开发环境井喷的大环境下,任何开发者和工程师都有必要学习一些基本的系统管理命令.特定的命令和工具 ...
- iOS: [UITableView reloadData]
在 iTouch4 或者相差不多的 iPhone 上,不建议在 UIViewController 的 viewWillAppear 的方法中放置 UITableView 的 reloadData 方法 ...
- log4j配置 logging.xml (转载)
Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过配置,可以创建出Log4J的运行环境 ...
- mysql中" ' "和 " ` "的区别
http://blog.csdn.net/yang3290325/article/details/3349907
- 【java】 java设计模式(3):单例模式(Singleton)
单例对象(Singleton)是一种常用的设计模式.在Java应用中,单例对象能保证在一个JVM中,该对象只有一个实例存在.这样的模式有几个好处: 1.某些类创建比较频繁,对于一些大型的对象,这是一笔 ...
- 0060 Spring MVC的数据类型转换--ConversionService--局部PropertyEditor--全局WebBindingInitializer
浏览器向服务器提交的数据,多是字符串形式,而有些时候,浏览器需要Date.Integer等类型的数据,这时候就需要数据类型的转换器 使用Spring的ConversionService及转换器接口 下 ...
- cocos2dx-3.x物理引擎Box2D介绍
理引擎 Cocos2d-x引擎内置了两种物理引擎,它们分别是Box2D和Chipmunk,都是非常优秀的2D物理引擎,而且x引擎将它们都内置在SDK中.Box2D使用较为广泛,在这里选择Box2D来进 ...
- uiimageview 异步加载图片
dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void){ NSURL *url = ...
- Android 多状态按钮ToggleButton
1.什么是ToggleButtonToggleButton有两种状态:选中和未选中状态并且需要为不同的状态设置不同的显示文本2.ToggleButton属性android:checked=" ...
- CALayer的position,anchorPoint属性 与UIView的frame 属性
彻底理解CALayer的position,anchorPoint属性 与UIView的frame 属性 一.position,anchorPoint两者都是CALayer的属性,都是CGPoint点 ...