# 加载数据 df = data_forecast_is_stk_bs_rpt_zq_befor_big.reset_index() # 绘制散点图 plt.scatter(df.index, df['上一年比本年倍数'], c='blue', cmap='Blues', alpha=0.6) plt.xlabel('Index') plt.ylabel('上一年比本年倍数') # 设置 y 轴刻度的范围和步长 plt.yticks(range(0, max(df['上一年比本年倍数'])+10, 10)) plt.show() 'float' object cannot be interpreted as an integer
时间: 2023-08-06 08:08:25 浏览: 101
这个错误通常是因为在设置 `yticks` 时使用了浮点数而不是整数。你可以将 `range` 函数中的参数转换为整数,或者使用 `np.arange` 函数来生成整数数组。例如:
```
import numpy as np
# ...
plt.yticks(np.arange(0, max(df['上一年比本年倍数'])+10, 10))
```
或者:
```
# ...
plt.yticks([int(y) for y in range(0, max(df['上一年比本年倍数'])+10, 10)])
```
这样应该就可以避免这个错误了。
相关问题
# 加载数据 df = data_forecast_is_stk_bs_rpt_zq_befor_big.reset_index() # 绘制散点图 plt.scatter(df.index, df['上一年比本年倍数']) plt.xlabel('Index') plt.ylabel('上一年比本年倍数') plt.show() 散点的颜色没有深浅怎么修改
你可以通过设置 `c` 参数来修改散点的颜色深浅,例如:
```python
plt.scatter(df.index, df['上一年比本年倍数'], c=df['上一年比本年倍数'], cmap='Blues')
```
这里设置 `c` 参数为 `df['上一年比本年倍数']`,表示根据该列数据确定散点的颜色深浅。`cmap` 参数指定了颜色映射表,这里选择了 `Blues`,表示蓝色调的颜色映射表。你可以根据实际需求选择不同的颜色映射表。
# 加载数据 df = data_forecast_is_stk_bs_rpt_zq_befor_big.reset_index() # 绘制散点图 fig, ax = plt.subplots(figsize=(12, 12)) plt.scatter(df.index, df['上一年比本年倍数'], c='blue', cmap='Blues', alpha=0.6) plt.xlabel('Index') plt.ylabel('上一年比本年倍数') # 设置 y 轴刻度的范围和步长 plt.yticks(np.arange(0, max(df['上一年比本年倍数'])+20, 20)) plt.show() 和df1= data_forecast_is_stk_bs_rpt_cw_befor_big.reset_index() fig, ax = plt.subplots(figsize=(12, 12)) plt.scatter(df1.index, df1['上一年比本年倍数'], c='orange', cmap='Oranges', alpha=0.6) plt.xlabel('Index') plt.ylabel('倍数') plt.yticks(np.arange(0, max(df1['上一年比本年倍数'])+20, 20)) plt.show() 现在是2个分开的散点图怎么合并成一个
您可以使用 Matplotlib 的 subplot() 函数将两个散点图绘制在同一个图中。具体步骤如下:
1.创建一个大小为(12, 24)的 figure 对象,并使用 subplot() 函数创建两个子图,分别占据整个图像的上半部分和下半部分。
2.在第一个子图中绘制第一个散点图,设置颜色为蓝色。
3.在第二个子图中绘制第二个散点图,设置颜色为橙色。
4.设置横轴标签和纵轴标签。
5.使用 tight_layout() 函数调整子图之间的间距。
以下是示例代码:
```
fig, (ax1, ax2) = plt.subplots(nrows=2, figsize=(12, 24))
# 第一个散点图
ax1.scatter(df.index, df['上一年比本年倍数'], c='blue', cmap='Blues', alpha=0.6)
ax1.set_ylabel('上一年比本年倍数')
ax1.set_yticks(np.arange(0, max(df['上一年比本年倍数'])+20, 20))
# 第二个散点图
ax2.scatter(df1.index, df1['上一年比本年倍数'], c='orange', cmap='Oranges', alpha=0.6)
ax2.set_xlabel('Index')
ax2.set_ylabel('倍数')
ax2.set_yticks(np.arange(0, max(df1['上一年比本年倍数'])+20, 20))
# 图像标签
fig.suptitle('上一年比本年倍数散点图', fontsize=24)
# 调整子图之间的间距
plt.tight_layout()
# 显示图像
plt.show()
```
运行以上代码,即可得到两个散点图合并的结果。
阅读全文