Matplotlib在数据可视化点图案例分析
时间: 2024-11-03 14:00:48 浏览: 27
【Matplotlib】数据可视化实例分析
Matplotlib是一个非常流行的Python数据可视化库,尤其适合创建各种类型的点图。下面是一些使用Matplotlib进行点图案例分析的基本步骤:
1. **基本点图示例**:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建一些随机数据
x = np.linspace(0, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.title('Sine Wave')
plt.xlabel('X-Axis')
plt.ylabel('Y-Axis')
plt.show()
```
在这个例子中,我们生成了一个正弦波形的数据,并用点连接起来绘制了一张简单的点图。
2. **散点图**:
如果你想要表示两个变量之间的关系,比如房价和面积的关系,可以创建散点图:
```python
house_data = ... # 假设这是房价和面积数据
plt.scatter(house_data['area'], house_data['price'])
plt.title('Housing Prices vs Area')
plt.xlabel('Area (sqm)')
plt.ylabel('Price ($)')
plt.show()
```
3. **动态调整**:
Matplotlib允许你添加交互元素,如悬停提示:
```python
from mpl_toolkits.axes_grid1 import host_subplot
import mpld3
host = host_subplot(111)
plt.subplots_adjust(right=0.75)
par = host.twinx()
par.set_ylabel("Temperature (F)", color="r")
p1, = host.plot([1, 2, 3], [101, 102, 103], label="Temperature (C)")
p2, = par.plot([1, 2, 3], [33.8, 34.2, 35.6], marker="o", linestyle="", color="r",
label="Temperature (F)")
host.legend()
host.set_xlim(0, 4)
host.set_ylim(0, 105)
par.set_ylim(30, 40)
def hover(event):
if event.inaxes == par:
txt = 'Temperature: %.2f F' % par.get_ydata()[event.ind[0]]
a = ax.annotate(txt, xy=(event.xdata, event.ydata), textcoords='data',
size=14, ha='center', va='bottom', bbox=dict(boxstyle="round",
fc=(1., 1., 0.9), ec="w"))
fig = plt.gcf()
fig.canvas.mpl_connect("motion_notify_event", hover)
mpld3.save_html(fig, "scatter_interactive.html")
```
这将创建一个动态的散点图,鼠标悬停在点上时会显示出温度信息。
阅读全文