python 作图两张图同时存在
时间: 2023-07-21 21:01:10 浏览: 96
要在Python中同时显示两张图,您可以使用matplotlib库的子图功能。下面是一个示例代码,展示了如何绘制两个子图:
```python
import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
# 创建第一个子图
plt.subplot(2, 1, 1) # 2行1列,第1个子图
plt.plot(x, y1)
plt.title('Sin')
# 创建第二个子图
plt.subplot(2, 1, 2) # 2行1列,第2个子图
plt.plot(x, y2)
plt.title('Cos')
# 显示图形
plt.tight_layout() # 自动调整子图布局
plt.show()
```
这段代码会创建一个包含两个子图的图形窗口,一个子图显示正弦函数,另一个子图显示余弦函数。您可以根据需要调整子图数量、布局和标题等。运行代码后,将会显示两张图形。
相关问题
IRIS通过kmeans聚类后比较真值与聚类数据,通过python作图
好的,以下是一个示例代码,可以通过KMeans对IRIS数据集进行聚类,并作图进行比较:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from sklearn.datasets import load_iris
from sklearn.decomposition import PCA
# 加载IRIS数据集
iris = load_iris()
X = iris.data
y = iris.target
# 对IRIS数据集进行KMeans聚类
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
# PCA降维
pca = PCA(n_components=2)
X_pca = pca.fit_transform(X)
# 绘制真值散点图
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=y)
plt.title("Ground Truth")
plt.show()
# 绘制KMeans聚类结果散点图
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=kmeans.labels_)
plt.title("KMeans Clustering")
plt.show()
```
运行这段代码后,会先绘制出真值散点图,然后绘制出KMeans聚类结果散点图,可以通过比较这两张图来了解聚类效果。
pandas 帕累托分布和作图
帕累托分布是指一种数据分布,它可以用来描述一个数据集中值出现的频率。在 pandas 中,你可以使用 `Series.plot.hist()` 或者 `DataFrame.plot.hist()` 方法来绘制一个数据的帕累托分布图。
例如,你可以这样绘制一个 Series 的帕累托分布图:
```python
import pandas as pd
s = pd.Series([1, 2, 3, 3, 3, 4, 5])
s.plot.hist()
```
这样会绘制出一张图,其中的每一条柱形图表示数据中的一个值出现的频率。
你也可以使用 `DataFrame.plot.hist()` 方法来绘制一个 DataFrame 中的数据的帕累托分布图,这将会在每一列上绘制一条柱形图。例如:
```python
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3, 3, 3, 4, 5], 'B': [1, 2, 2, 2, 3, 3, 4]})
df.plot.hist()
```
这将会绘制出一张图,其中有两条柱形图,分别表示数据列 A 和 B 中值出现的频率。
阅读全文