<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Changed design
1.Plot the daily temperature over the course of the year. (This should probably be a line chart.) Create a bar chart that shows the average temperature and humidity by month.¶
Step1:  2.Use a scatterplot to show how the daily rental volume varies with temperature. Use a different series (with different colors) for each season.
Step2:  3.Create another scatterplot to show how daily rental volume varies with windspeed. As above, use a different series for each season.
Step3:  4.How do the rental volumes vary with geography? Compute the average daily rentals for each station and use this as the radius for a scatterplot of each station's latitude and longitude.
<ASSISTANT_TASK:>
Python Code:
weather = pd.read_table("daily_weather.tsv")
usage = pd.read_table("usage_2012.tsv")
station = pd.read_table("stations.tsv")
weather.loc[weather['season_code'] == 1, 'season_desc'] = 'winter'
weather.loc[weather['season_code'] == 2, 'season_desc'] = 'spring'
weather.loc[weather['season_code'] == 3, 'season_desc'] = 'summer'
weather.loc[weather['season_code'] == 4, 'season_desc'] = 'fall'
weather['date'] = pd.to_datetime(weather['date'])
month_rental = weather.groupby(weather['date'].dt.month)['total_riders'].sum()
mean = weather.groupby('season_desc')['temp'].mean()
weather['temp'].plot()
weather['month'] = pd.DatetimeIndex(weather.date).month
weather.groupby('month')['temp', 'humidity'].mean().plot(kind='bar')
Explanation: Changed design
1.Plot the daily temperature over the course of the year. (This should probably be a line chart.) Create a bar chart that shows the average temperature and humidity by month.¶
End of explanation
plt.scatter(
    weather[weather['season_desc'] == 'winter']['temp'],
    weather[weather['season_desc'] == 'winter']['total_riders'],
    s=30, color='blue', label='winter')
plt.scatter(
    weather[weather['season_desc'] == 'spring']['temp'],
    weather[weather['season_desc'] == 'spring']['total_riders'],
    s=30, color='magenta', label='spring')
plt.scatter(
    weather[weather['season_desc'] == 'summer']['temp'],
    weather[weather['season_desc'] == 'summer']['total_riders'],
    s=30, color='cyan', label='summer')
plt.scatter(
    weather[weather['season_desc'] == 'fall']['temp'],
    weather[weather['season_desc'] == 'fall']['total_riders'],
    s=30, color='yellow', label='fall')
plt.title("Daily rental volume and temperature")
plt.legend(loc=4)
plt.show()
Explanation: 2.Use a scatterplot to show how the daily rental volume varies with temperature. Use a different series (with different colors) for each season.
End of explanation
plt.scatter(
    weather[weather['season_desc'] == 'winter']['windspeed'],
    weather[weather['season_desc'] == 'winter']['total_riders'],
    s=30, color='blue', label='winter')
plt.scatter(
    weather[weather['season_desc'] == 'spring']['windspeed'],
    weather[weather['season_desc'] == 'spring']['total_riders'],
    s=30, color='magenta', label='spring')
plt.scatter(
    weather[weather['season_desc'] == 'summer']['windspeed'],
    weather[weather['season_desc'] == 'summer']['total_riders'],
    s=30, color='cyan', label='summer')
plt.scatter(
    weather[weather['season_desc'] == 'fall']['windspeed'],
    weather[weather['season_desc'] == 'fall']['total_riders'],
    s=30, color='yellow', label='fall')
plt.title("Daily rental volume and windspeed")
plt.legend(loc=1)
plt.show()
Explanation: 3.Create another scatterplot to show how daily rental volume varies with windspeed. As above, use a different series for each season.
End of explanation
stations = station [['station', 'lat', 'long']]
stations
count = usage['station_start'].value_counts()
average_rental_df = DataFrame({ 'average_rental' : count / 365})
average_rental_df.index = range(185)
average_rental_df
merged_df = pd.concat([stations, average_rental_df], axis=1)
plt.scatter(merged_df['long'], merged_df['lat'], color=c_cycle, alpha=0.5, s=(merged_df['average_rental']*10), label='Location of stations', )
plt.legend(bbox_to_anchor=(1.2, 0.2), loc='lower right', borderaxespad=0)
plt.xlabel('Longitude')
plt.ylabel('Latitude')
plt.title('Rental volume and geography')
plt.show()
Explanation: 4.How do the rental volumes vary with geography? Compute the average daily rentals for each station and use this as the radius for a scatterplot of each station's latitude and longitude.
End of explanation
<END_TASK>