matplotlib marker种类
时间: 2023-04-12 09:05:19 浏览: 104
matplotlib的marker种类包括:点('.')、像素(',')、圆圈('o')、方形('s')、三角形('^'、'v'、'<'、'>')、十字('+')、叉('x')、钻石('D')、星星('*')、六边形('h'、'H'、'p'、'P')等。
相关问题
matplotlib 折线,饼状,柱状
### 使用 Matplotlib 绘制不同类型的图表
#### 折线图绘制方法
为了展示数据的趋势变化,可以采用 `matplotlib` 的 `plot()` 函数来实现折线图的绘制。通过传递两个列表参数给该函数分别代表横坐标和纵坐标的数值序列即可完成一条简单的折线描绘工作。
```python
import matplotlib.pyplot as plt
# 数据准备
x_values = [0, 1, 2, 3, 4]
y_values = [0, 2, 1, 3, 4]
plt.figure(figsize=(8, 6))
plt.plot(x_values, y_values, marker='o') # 添加标记点以便更清晰地看到各点位置
plt.title('Line Chart Example')
plt.xlabel('X-axis Label')
plt.ylabel('Y-axis Label')
plt.show()
```
#### 柱状图绘制方式
对于比较分类间的数据差异来说,柱状图是非常直观的选择之一。利用 `bar()` 或者 `barh()` 方法能够轻松构建垂直或水平方向上的条形统计图形。
```python
categories = ['A', 'B', 'C']
values = [5, 7, 3]
plt.figure(figsize=(8, 6))
plt.bar(categories, values)
for i in range(len(values)):
plt.text(i, values[i], str(values[i]), ha='center', va='bottom')
plt.title('Bar Chart Example')
plt.xlabel('Categories')
plt.ylabel('Values')
plt.show()
```
#### 饼状图制作技巧
当需要表示部分占整体的比例关系时,可以选择饼状图作为表达形式。借助于 `pie()` 函数并传入相应比例数组及相关配置选项就可以得到一张美观大方的扇区分布图。
```python
sizes = [15, 30, 45, 10]
labels = ['Frogs', 'Hogs', 'Dogs', 'Logs']
plt.figure(figsize=(8, 6))
plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=90)
plt.axis('equal') # Equal aspect ratio ensures that pie is drawn as a circle.
plt.title('Pie Chart Example')
plt.show()
```
from sklearn import datasets from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import train_test_split import matplotlib.pyplot as plt import numpy as np # 加载数据集 iris = datasets.load_iris() X = iris.data y = iris.target # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3) # 创建KNN分类器,K=3 knn = KNeighborsClassifier(n_neighbors=3) # 训练模型 knn.fit(X_train, y_train) # 在测试集上进行预测 y_pred = knn.predict(X_test) # 计算准确率 accuracy = knn.score(X_test, y_test) print("准确率为:", accuracy) # 绘制分类分布结果的二维图 colors = ['red', 'green', 'blue'] markers = ['o', 's', 'x'] for i, color, marker in zip(np.unique(y_pred), colors, markers): plt.scatter(X_test[y_pred == i, 0], X_test[y_pred == i, 1], color=color, marker=marker, label=iris.target_names[i]) plt.legend() plt.xlabel(iris.feature_names[0]) plt.ylabel(iris.feature_names[1]) plt.show()
这段代码使用了scikit-learn库中的K近邻算法实现对鸢尾花数据集的分类。首先,通过导入数据集并将其分为训练集和测试集。然后创建了一个KNeighborsClassifier对象,其中传递参数n_neighbors=3表示使用3个邻居来进行分类。接下来,使用fit()方法训练模型,使用predict()方法在测试集上进行预测。最后,使用score()方法计算模型在测试集上的准确率,并使用matplotlib库绘制了分类结果的二维图。
阅读全文