科学研究是人类文明进步的重要推动力。然而,随着社会的发展和科技的进步,我们不禁思考,是否有一种全新的方式可以让科研更加有趣、更加具有吸引力呢?
在探索的道路上,我们或许可以借鉴手游中的角色元素,为科研注入全新的活力和激情。想象一下,如果我们能够将科研视为一场令人兴奋的冒险旅程,让每个研究者都成为其中的主角,那将是多么有趣而又富有创造力的一种方式!
将手游角色扮演的元素引入科研领域,可以激发科学家们的热情、提高研究的乐趣,并促进创新和合作。让我们一起踏上这场奇妙的科研冒险之旅,成为科学界的高级玩家吧!
免责声明:本文为整活类,不代表任何真实的观点或建议。请勿将此文与科研实际应用相混淆。谢谢!
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
# 输入角色图片
img = Image.open('/home/mw/project/霍霍.png')
# 抽取图片的像素值,创建一个numpy数组
img_array = np.array(img)
# 计算图片中各个色调范围的数目
n_bins = 100
# 从图片中采样指定数量的颜色
colors = []
for i in range(n_bins):
r = np.random.randint(0, img_array.shape[0])
g = np.random.randint(0, img_array.shape[1])
b = img_array[r, g]
colors.append((b[0]/255, b[1]/255, b[2]/255))
# 将颜色从冷到暖排序
colors = sorted(colors, key=lambda x: x[0]*x[1]*x[2])
# 创建颜色映射
n = len(colors)
cmap = plt.cm.colors.ListedColormap(colors)
bounds = np.linspace(0, 1, n+1)
# 创建网格
X, Y = np.meshgrid(range(10), range(10))
Z = X + Y
# 绘制填色图
fig = plt.figure(figsize=(12, 8))
ax = fig.add_subplot(111)
cf=plt.contourf(X, Y, Z, cmap=cmap)
# 绘制等值线
plt.contour(X, Y, Z, levels=n, colors='k', linewidths=0.5)
cb = plt.colorbar(cf, orientation='vertical', shrink=0.8)
plt.axis('off')
plt.savefig('color_ramp.png', dpi=300, bbox_inches='tight')
import xarray as xr
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import cartopy.feature as cfeature
import cartopy.crs as ccrs
import cartopy.mpl.ticker as cticker
from cartopy.util import add_cyclic_point
# 打开数据集
nc = xr.open_dataset('/home/mw/input/1107125177/2023110720.nc')
data = nc.t[0, 2, :, :]
lons = data.longitude
lats = data.latitude
fig = plt.figure(figsize=(11, 8.5))
# 设置地图投影为PlateCarree
ax = plt.axes(projection=ccrs.PlateCarree())
# 绘制填充等值线图
cs = ax.contourf(lons, lats, data,
transform=ccrs.PlateCarree(), cmap=cmap, levels=np.arange(230, 280, 5), extend='both')
# 添加海岸线
ax.coastlines()
# 设置经度刻度线
ax.set_xticks(np.arange(-180, 181, 60), crs=ccrs.PlateCarree())
lon_formatter = cticker.LongitudeFormatter()
ax.xaxis.set_major_formatter(lon_formatter)
# 设置纬度刻度线
ax.set_yticks(np.arange(-90, 91, 30), crs=ccrs.PlateCarree())
lat_formatter = cticker.LatitudeFormatter()
ax.yaxis.set_major_formatter(lat_formatter)
# 添加颜色条
cbar = plt.colorbar(cs)
# 在此处添加中文注释
plt.title('温度分布图') # 图片标题
plt.xlabel('经度') # x轴标签
plt.ylabel('纬度') # y轴标签
# 显示图形
plt.show()