Python基本绘图案例

目录

一、折线图

二、柱状图

 三、饼图bar

四、直方图


一、折线图

#绘制折线图
import matplotlib.pyplot as plt
#绘制X轴对应的点
x_values=[1,2,3,4,5]
#每一个X点,对应的Y值
squares=[1,4,9,16,25]
#绘制图形
plt.plot(x_values,squares,linewidth=5)
#设置图表标题,并给坐标轴加上标签
plt.title("Line chart",fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)
#设置刻度标记的大小
#axis:指定的实参将影响x轴和y轴上的刻度
#labelsize:将刻度标记的字号设置为14
plt.tick_params(axis='both',labelsize=14)
#显示绘制的图形
plt.show()

二、柱状图

#并列柱状图
import matplotlib.pyplot as plt
name_list = ['Monday','Tuesday','Friday','Sunday']
num_list = [1.5,0.6,7.8,6]
num_list1 = [1,2,3,1]
x =list(range(len(num_list)))
total_width, n = 0.8, 2
width = total_width / n
plt.bar(x, num_list, width=width, label='boy',fc = 'y')
for i in range(len(x)):
    x[i] = x[i] + width
plt.bar(x, num_list1, width=width, label='girl',tick_label = name_list,fc = 'r')
plt.legend()
plt.show()

#堆叠柱状图
# -*- coding: utf-8 -*-
import matplotlib.pyplot as plt
name_list = ['Monday','Tuesday','Friday','Sunday']
num_list = [1.5,0.6,7.8,6]
num_list1 = [1,2,3,1]
plt.bar(range(len(num_list)), num_list, label='boy',fc = 'y')
plt.bar(range(len(num_list)), num_list1, bottom=num_list, label='girl',tick_label = name_list,fc = 'r')
plt.legend()
plt.show()

 三、饼图bar

# 饼图bar
import numpy as np    
import matplotlib.mlab as mlab    
import matplotlib.pyplot as plt    
labels=['China','Swiss','USA','UK','Laos','Spain']  
X=[222,42,455,664,454,334]    
fig = plt.figure()  
plt.pie(X,labels=labels,autopct='%1.2f%%') #画饼图(数据,数据对应的标签,百分数保留两位小数点)  
plt.title("Pie chart")   
plt.show()    
plt.savefig("PieChart.jpg")  

四、直方图

#绘制直方图
import matplotlib.pyplot as plt
import numpy as np
import matplotlib

# 设置matplotlib正常显示中文和负号
matplotlib.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False     # 正常显示负号
# 随机生成(10000,)服从正态分布的数据
data = np.random.randn(10000)
"""
绘制直方图
data:必选参数,绘图数据
bins:直方图的长条形数目,可选项,默认为10
normed:是否将得到的直方图向量归一化,可选项,默认为0,代表不归一化,显示频数。normed=1,表示归一化,显示频率。
facecolor:长条形的颜色
edgecolor:长条形边框的颜色
alpha:透明度
"""
plt.hist(data, bins=40, normed=0, facecolor="blue", edgecolor="black", alpha=0.7)
# 显示横轴标签
plt.xlabel("区间")
# 显示纵轴标签
plt.ylabel("频数/频率")
# 显示图标题
plt.title("频数/频率分布直方图")
plt.show()

猜你喜欢

转载自blog.csdn.net/Analyst128/article/details/81160279
今日推荐