Wandering_night 2024-06-02 11:32 采纳率: 47.1%
浏览 1

使用python绘制箱线图

这是一组表格数据,现需要制作:1.各城市日照时间的箱线图 2.各月份日照时间的箱线图
请问如何编写代码?
城市 1月 2 3 4 5 6 7 8 9 10 11 12月
北京 217 225 160 237 264 258 233 210 151 176 134 138
天津 194 210 130 222 232 235 204 214 165 190 157 178
石家庄 154 206 104 213 196 236 225 217 142 173 154 184
太原 188 212 189 248 268 227 228 256 183 200 189 205
呼和浩特 208 224 211 265 273 313 257 260 203 240 179 159
沈阳 157 174 170 172 266 216 193 201 221 196 162 147
大连 207 199 213 229 301 277 272 267 247 227 191 217
长春 213 220 208 243 302 266 288 261 250 223 167 170
哈尔滨 158 161 189 241 268 263 260 240 256 210 169 113
上海 131 158 58 159 180 103 96 99 145 104 112 186
南京 158 175 91 159 193 113 150 146 184 105 156 185
杭州 105 163 74 141 165 88 113 146 183 89 118 139
合肥 160 166 77 141 197 113 123 172 188 78 159 213
福州 91 144 63 105 117 142 159 176 184 98 98 138
南昌 82 131 71 100 145 104 148 134 213 115 142 215
济南 174 150 137 200 203 210 128 185 125 145 160 167
青岛 171 150 159 200 232 198 191 183 190 179 175 207
郑州 177 171 126 175 212 184 200 197 120 93 146 195
武汉 103 143 77 124 189 129 180 185 203 83 137 211
长沙 73 97 57 88 108 105 99 136 174 73 91 167
广州 123 145 67 88 50 173 151 126 163 179 175 160
南宁 83 93 65 85 102 196 181 150 205 147 131 164
海口 80 133 146 146 150 230 226 202 178 153 67 96
桂林 62 60 63 71 104 148 160 143 200 149 119 186
重庆 21 21 66 93 99 78 84 169 130 27 15 30
成都 53 65 73 97 101 55 100 80 78 42 25 57
贵阳 27 34 86 71 64 81 91 107 148 74 27 113
昆明 210 238 281 242 132 162 114 92 153 123 167 171
拉萨 248 221 255 286 227 220 217 169 210 256 264 250
西安 80 127 71 150 191 141 153 212 94 29 56 64
兰州 205 226 233 248 276 235 245 243 223 155 188 197
西宁 211 215 226 248 241 172 216 193 217 164 193 205
银川 208 220 216 242 292 263 241 260 204 207 199 202
乌鲁木齐 61 101 120 255 299 267 268 275 272 216 93 98

  • 写回答

3条回答 默认 最新

  • 檀越@新空间 2024-06-02 11:32
    关注

    上午好☀️☀️☀️️
    本答案参考ChatGPT-3.5

    在Python中,你可以使用matplotlib库来绘制箱线图。以下是一个示例代码,展示了如何根据你提供的数据绘制各城市和各月份的日照时间箱线图:

    import pandas as pd
    import matplotlib.pyplot as plt
    
    # 假设你的数据存储在一个名为data的DataFrame中
    data = {
        '城市': ['北京', '天津', '石家庄', '太原', '呼和浩特', '沈阳', '大连', '长春', '哈尔滨', '上海', '南京', '杭州', '合肥', '福州', '南昌', '济南', '青岛', '郑州', '武汉', '长沙', '广州', '南宁', '海口', '桂林', '重庆', '成都', '贵阳', '昆明', '拉萨', '西安', '兰州', '西宁', '银川', '乌鲁木齐'],
        '1月': [217, 194, 154, 188, 208, 157, 207, 213, 158, 131, 158, 105, 160, 91, 82, 174, 171, 103, 73, 123, 83, 83, 21, 53, 27, 210, 80, 205, 211, 61],
        # 其他月份的数据类似,这里省略
    }
    
    df = pd.DataFrame(data)
    
    # 绘制各城市日照时间的箱线图
    plt.figure(figsize=(10, 6))
    ax = df.boxplot(column='1月', by='城市', sym='o')
    ax.set_title('各城市1月日照时间')
    ax.set_xlabel('城市')
    ax.set_ylabel('日照时间(天)')
    plt.show()
    
    # 绘制各月份日照时间的箱线图
    plt.figure(figsize=(10, 6))
    ax = df.boxplot(column=['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], sym='o')
    ax.set_title('各月份日照时间')
    ax.set_xlabel('月份')
    ax.set_ylabel('日照时间(天)')
    plt.show()
    

    这段代码首先将数据转换为pandas DataFrame,然后分别绘制了各城市1月的箱线图和各月份的箱线图。如果你有其他月份的数据,只需要将它们添加到DataFrame中,并在boxplot函数中列出相应的列名即可。

    注意:由于数据量较大,这里只展示了1月的数据,如果你需要全部月份的数据,你需要将数据格式调整为一个包含所有月份的二维数组,并在boxplot函数中相应地列出列名。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月2日