以下是关于Python如何使用Matplotlib库绘制Excel表格和shp形状文件的实例教程。
Excel表格的使用
步骤一:导入所需库
import pandas as pd
import matplotlib.pyplot as plt
步骤二:读取Excel文件并处理数据
使用Pandas库读取Excel文件,并进行一些数据处理,以便后续可视化。
data = pd.read_excel('data.xlsx') # 读取Excel文件
mean = data.mean() # 求各列均值
步骤三:绘制图表
plt.bar(mean.index, mean.values) # 绘制柱状图
plt.title("Average Values of Data") # 设置标题
plt.xlabel("Columns") # 设置X轴标签
plt.ylabel("Values") # 设置Y轴标签
plt.show() # 显示图表
这个例子演示了如何读取Excel文件并使用Matplotlib库绘制柱状图。使用Pandas库处理Excel数据可以极大地简化数据处理部分的代码。
shp形状文件的使用
步骤一:导入所需库
import shapefile as shp
import matplotlib.pyplot as plt
步骤二:读取并处理shp文件
使用shapefile
库读取.shp
文件中的几何形状和其相应的属性。在这个例子中,我们将用Continent.shp文件演示如何绘制地图。
sf = shp.Reader('./Continent/Continent.shp') # 读取.shp文件
shapes = sf.shapes() # 读取所有几何形状
records = sf.records() # 读取所有属性
步骤三:绘制地图
使用Matplotlib库中的Polygon
类和Basemap
包制作地图。
fig, ax = plt.subplots(figsize=(10, 10))
# 设定地图范围并绘制边界
m = Basemap(resolution='c', projection='merc',lat_0=50, lon_0=-100,
llcrnrlat=0, urcrnrlat=70, llcrnrlon=-180, urcrnrlon=180)
m.drawmapboundary(fill_color='#46bcec')
# 填充颜色
for i, shape in enumerate(shapes):
xx, yy = zip(*shape.points)
m.plot(xx, yy, marker=None,color='white', linewidth=1,zorder=2)
part = shape.parts
part.append(len( xx))
for j in range(len(shape.parts)):
x = xx[part[j]:part[j+1]]
y = yy[part[j]:part[j+1]]
ax.add_patch(Polygon(np.c_[x,y], fill=False, hatch='/', linewidth=2))
plt.title("Map of Continents")
plt.show()
这个例子演示了如何读取shp文件并使用Matplotlib库绘制地图。通过设置地图范围和使用Basemap
包中的函数,我们可以绘制出包含多个国家的可视化地图。