clear;
clc;
a = 10; %%%%% 长
b = 5; %%%%% 宽
n = 100; %%%%% 点数量
cxd1 = a*rand(n,1); %%%%%% 产生横坐标
cxd2 = b*rand(n,1); %%%%%% 产生纵坐标
cxd = [cxd1 cxd2]; %%%%%% 生产随机点
figure(1)
plot(cxd1,cxd2,'o') %%%%%% 绘图,从图可以大致看出随机分布
figure(2)
hist(cxd1) %%%%%% 验证横坐标随机分布
figure(3)
hist(cxd2) %%%%%% 验证纵坐标随机分布
植物大战僵尸怎么从文件中直接修改植物和僵尸的各项数值?一、基本配备
我们不需要修改器,那个没什么用。需要的工具是文件16进制编辑软件或者说磁盘编辑软件,比如 Winhex 我们的目的是对用户数据记录文件进行编辑,因此需要找到用户记录文件。98/ME/XP下比较好找,储存在Plants vs. Zombies/userdata/文件夹下。VISTA/WIN7位置比较诡异,在C:/Programme Files/Popcap/文件夹下面的一个什么子文件夹里面,在系统盘搜索Popcap应该会比较容易找到。
用户记录文件有N+1个,N个用户就有N个user?.dat的文件,?代表数字,对应用户列表。最后剩下的users.dat则存放了用户列表和用户名称。
二、数据修改
好了,知道用户文件后就用Winhex打开对应文件,比如以user1.dat为例。
这个文件至少含有820个字节。在后面的叙述中,文件的第一个字节对应的字节号是0,那么第800个字节对应的字节号就应该是799,小学生的算术题而已。以下是本人经多次测试得出的数据所代表的意义:
记录文件user?.dat
----------------------------------------------------------------------------------------------------
字节(Dec) 长度(Dec) 说明(Hex)
---------- 基本数据 --------------------------------------------------------------------------------
00 4 不明(定值0C)
04 4 Adventure 当前关(01-32)
08 4 金钱
12 4 Adventure 完成次数
---------- Survival 数据 ---------------------------------------------------------------------------
16 4 Survival 01 已完成(00-05)Flags
20 4 Survival 02 已完成(00-05)Flags
24 4 Survival 03 已完成(00-05)Flags
28 4 Survival 04 已完成(00-05)Flags
32 4 Survival 05 已完成(00-05)Flags
36 4 Survival 06 (Hard) 已完成(00-0A)Flags
40 4 Survival 07 (Hard) 已完成(00-0A)Flags
44 4 Survival 08 (Hard) 已完成(00-0A)Flags
48 4 Survival 09 (Hard) 已完成(00-0A)Flags
52 4 Survival 10 (Hard) 已完成(00-0A)Flags
64 4 Survival:Endless 最高记录
---------- Mini Game 数据 --------------------------------------------------------------------------
76 4 Mini Game 01 完成次数
80 4 Mini Game 02 完成次数
84 4 Mini Game 03 完成次数
88 4 Mini Game 04 完成次数
92 4 Mini Game 05 完成次数
96 4 Mini Game 06 完成次数
100 4 Mini Game 07 完成次数
104 4 Mini Game 08 完成次数
108 4 Mini Game 09 完成次数
112 4 Mini Game 10 完成次数
116 4 Mini Game 11 完成次数
120 4 Mini Game 12 完成次数
124 4 Mini Game 13 完成次数
128 4 Mini Game 14 完成次数
132 4 Mini Game 15 完成次数
136 4 Mini Game 16 完成次数
140 4 Mini Game 17 完成次数
144 4 Mini Game 18 完成次数
148 4 Mini Game 19 完成次数
152 4 Mini Game 20 完成次数
---------- The Tree of Wisdom 数据 -----------------------------------------------------------------
212 4 The Tree of Wisdom 生长/高度
---------- Puzzle 数据I: Vasebreaker ---------------------------------------------------------------
216 4 Puzzle:Vasebreaker 01 完成次数
220 4 Puzzle:Vasebreaker 02 完成次数
224 4 Puzzle:Vasebreaker 03 完成次数
228 4 Puzzle:Vasebreaker 04 完成次数
232 4 Puzzle:Vasebreaker 05 完成次数
236 4 Puzzle:Vasebreaker 06 完成次数
240 4 Puzzle:Vasebreaker 07 完成次数
244 4 Puzzle:Vasebreaker 08 完成次数
248 4 Puzzle:Vasebreaker 09 完成次数
252 4 Puzzle:Vasebreaker:Endless 最高记录
---------- Puzzle 数据II: I,Zombie -----------------------------------------------------------------
256 4 Puzzle:I,Zombie 01 完成次数
260 4 Puzzle:I,Zombie 02 完成次数
264 4 Puzzle:I,Zombie 03 完成次数
268 4 Puzzle:I,Zombie 04 完成次数
272 4 Puzzle:I,Zombie 05 完成次数
276 4 Puzzle:I,Zombie 06 完成次数
280 4 Puzzle:I,Zombie 07 完成次数
284 4 Puzzle:I,Zombie 08 完成次数
288 4 Puzzle:I,Zombie 09 完成次数
292 4 Puzzle:I,Zombie:Endless 最高记录
---------- SHOP 出售数据 ---------------------------------------------------------------------------
416 4 Gatling Pea 升级卡片已购买(00-01)
420 4 Twin Sunflower 升级卡片已购买(00-01)
424 4 Gloom-shroom 升级卡片已购买(00-01)
428 4 Cattail 升级卡片已购买(00-01)
432 4 Winter Melon 升级卡片已购买(00-01)
436 4 Gold Magnet 升级卡片已购买(00-01)
440 4 Spikerock 升级卡片已购买(00-01)
444 4 Cob Cannon 升级卡片已购买(00-01)
448 4 Imitater 卡片已购买
456 4 Marigold Sprout I 已购买(2000.1.1至今天数,2000.1.1为0)日期
460 4 Marigold Sprout II 已购买(2000.1.1至今天数,2000.1.1为0)日期
464 4 Marigold Sprout III 已购买(2000.1.1至今天数,2000.1.1为0)日期
468 4 Golden Watering Can 升级已购买(00-01)
472 4 Fertilizer 已购买(03E8-03FC,未开启为0000)剩余
476 4 Bug Spray 已购买(03E8-03FC,未开启为0000)剩余
480 4 Phonograph 升级已购买(00-01)
484 4 Gardening Glove 升级已购买(00-01)
488 4 Mushroom Garden 已购买(00-01)
492 4 Aquarium Garden 已购买(00-01)
496 4 Snail 已购买(4字节,未明,状态相关)
500 4 Seed Slot 已升级(00-04)
504 4 Pool Cleaners 升级已购买(00-01)
508 4 Roof Cleaners 升级已购买(00-01)
512 4 Roof Rake 已购买(00-03)剩余
520 4 Chocolate 已获得(03E8-03FC,未开启为0000)剩余
524 4 The Tree of Wisdom 已购买(00-01)
528 4 Tree Food 已购买(03E8-03FC,未开启为0000)剩余
532 4 Wall-nut First Aid 升级已购买(00-01)
---------- 其他数据 --------------------------------------------------------------------------------
748 4 未知(00-01)
752 12 未知,可能与 The Tree of Wisdom 有关
768 4 Mini Game 开启提示标记(00-01)
788 4 Survival 开启提示标记(00-01)
796 4 Adventure 完成提示标记(00-01)
---------- Zen Garden 数据 -------------------------------------------------------------------------
816 4 Zen Garden 模式拥有花总数
820字节开始是 Zen Garden 模式下花的具体数据,每个花需要88字节
很多是吧,一点点慢慢来。
0字节就别改了,第8字节开始的4个字节记录的是你的金钱。这是个16进制的数据,比如你看到显示的值是FE 03 00 00,你读的时候要读成(Hex)000003FE,换算成十进制就是(Dec)1022。这里的1代表游戏中10的钱(最小的单位,一个银币是10)。也就是说,这个例子里你还有10220的余额。剩下的每个数都是如此。如果你觉得不可理解,建议去补习以下16进制的内容和文件的数据记录顺序。
里面有些数据,如巧克力的剩余量,由520字节开始的4个字节存储。在你还没有巧克力时,这个值是00 00 00 00,当你拾取第一个时,数据变成E9 03 00 00,就是十进制的1001。以后你用完巧克力,这个值最低也只降到E8 03 00 00,也就是十进制的1000。这要注意。还有些开关变量数据,都是布尔型的,只要设成1就OK。
其他还有一些Mini Game的数据,从文件中可以看到,当你第二次,第三次完成某一关卡时,这个数据会更新的,尽管从游戏中我们看不出任何不同。
游戏中植物卡片和道具如SHOP钥匙、图鉴的获得是ADVENTURE当前关卡有关,是自动获得的。
最后要说Zen Garden的花的数据。 一个花需要88字节。
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0 (00)00 00 00(00)00 00 00 (00)00 00 00(00)00 00 00
16 (00)00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
32 (00)00 00 00(00)00 00 00 00 00 00 00 00 00 00 00
48 00 00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
64 FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00
80 00 00 00 00 00 00 00 00
关注第 0 4 8 12 32 36 字节,也就是有括号的那些。
0字节代表花的主类型,32字节代表花的亚类型,就是Marigold的颜色。
TYPE(B1:L1) TYPE(VISI) TYPE(VISI,CN) SUBTYPE(B33:L1) SUBTYPE(VISI)
00(Hex) Peashooter 豌豆炮
01(Hex) Sunflower 太阳花
02(Hex) Cherry Bomb 樱桃炸弹
03(Hex) Wall-nut 小坚果
04(Hex) Potato Mine 地雷
05(Hex) Snow Pea 冰冻豌豆炮
06(Hex) Chomper 食人花
07(Hex) Repeater 连发豌豆炮
08(Hex) Puff-shroom 紫矮蘑菇
09(Hex) Sun-shroom 太阳蘑菇
0A(Hex) Fume-shroom 毒气蘑菇
0B(Hex) Grave Buster 坟墓杀手
0C(Hex) Hypno-shroom 迷乱蘑菇
0D(Hex) Scaredy-shroom 畏缩的蘑菇
0E(Hex) Ice-shroom 冰冻蘑菇
0F(Hex) Doom-shroom 末日蘑菇
10(Hex) Lily Pad 荷叶
11(Hex) Squash 跳瓜
12(Hex) Threepeater 三联豌豆炮
13(Hex) Tangle Kelp 海带
14(Hex) Jalapeno 辣椒
15(Hex) Spikeweed 棘刺草
16(Hex) Torchwood 燃烧的木桩
17(Hex) Tall-nut 大坚果
18(Hex) Sea-shroom 水生蘑菇
19(Hex) Plantern 灯
1A(Hex) Cactus 仙人掌
1B(Hex) Blover 三叶草
1C(Hex) Split Pea 双向豌豆炮
1D(Hex) Starfruit 星果
1E(Hex) Pumpkin 南瓜
1F(Hex) Magnet-shroom 磁力蘑菇
20(Hex) Cabbage-pult 卷心菜
21(Hex) Flower Pot 花盆
22(Hex) Kernel-pult 玉米
23(Hex) Coffee Bean 咖啡豆
24(Hex) Garlic 大蒜
25(Hex) Umbrella Leaf 遮蔽叶
26(Hex) Marigold 万寿菊
27(Hex) Melon-pult 西瓜
28(Hex) Gatling Pea 机枪豌豆炮
29(Hex) Twin Sunflower 孪生太阳花
2A(Hex) Gloom-shroom 爆毒蘑菇
2B(Hex) Cattail 猫尾花
2C(Hex) Winter Melon 冰冻西瓜
2D(Hex) Gold Magnet 金磁草
2E(Hex) Spikerock 石化棘刺
2F(Hex) Cob Cannon 玉米大炮
30(Hex) Imitater 拟形种子
31(Hex) Explode-o-nut 炸弹坚果
32(Hex) Gaint Wall-nut 巨型坚果
33(Hex) Sprout 花苗
而Marigold花的颜色
00(Hex) 白
01(Hex) #(无色)
02(Hex) 白
03(Hex) 品红
04(Hex) 橙
05(Hex) 浅红
06(Hex) 天青
07(Hex) 红
08(Hex) 蓝
09(Hex) 紫
0A(Hex) 浅紫
0B(Hex) 黄
0C(Hex) 浅绿
虽然此字节值为00和01是不会出错的,但是正常游戏都从02开始到0C的值,一共11种颜色。除了Marigold的花,这个值一律是0。
4字节的数据是花所在的花园。00是第一个花园,01是蘑菇园,02是水族馆。
8字节指的是位置。在蘑菇园和水族馆中,这个字节就代表了位置,大家可以尝试下每个值对应游戏中显示的位置。而在第一个花园里,这个字节和第12字节共同组成Grid坐标。左上是00,00,右下是07,03,一共8*3=32个格子。
36字节指的是花的状态。00表示幼苗,01是刚成长,02是第二次长大,03是最大。
最后就是那些被我标记成FF的区域,一共有3个,对此机制不明,只知道这个数据与浇花、施肥、长大、和满足的具体时间有关。这个数据的不当修改会导致花永远无法长大或者高兴。总之,这个值照抄其他正常花就可以了。
tieba.baidu/f?kz=609709113
commercial airlines商业航空公司,就是民用航空公司的意思
与其对应的应该是军用吧
请教,grid控件的用法griddata()——网格数据网格化和曲面拟合函数。griddata的用法ZI=griddata(x,y,z,XI,YI)griddata的实例rand('seed',0)x=rand(100,1)*4-2;y=rand(100,1)*4-2;z=x.*exp(-x.^2-y.^2);ti=-2:.25:2;[XI,YI]=meshgrid(ti,ti);ZI=griddata(x,y,z,XI,YI);mesh(XI,YI,ZI)
如何在r语言中使用 lightgbm本文用到的处理二值数据的方法,有以下两种:
glm(generalized boosted models)
glmnet(generalized linear models)
glm使用了boosted trees,glmnet使用了regression
# load libraries
library(caret)
library(pROC)
#################################################
# data prep
#################################################
# load data
titanicDF <- read.csv('math.ucdenver.edu/RTutorial/titanic.txt',sep='\t')
titanicDF$Title <- ifelse(grepl('Mr ',titanicDF$Name),'Mr',ifelse(grepl('Mrs ',titanicDF$Name),'Mrs',ifelse(grepl('Miss',titanicDF$Name),'Miss','Nothing')))
titanicDF$Age[is.na(titanicDF$Age)] <- median(titanicDF$Age, na.rm=T)
# miso format
titanicDF <- titanicDF[c('PClass', 'Age', 'Sex', 'Title', 'Survived')]
# dummy variables for factors/characters
titanicDF$Title <- as.factor(titanicDF$Title)
titanicDummy <- dummyVars("~.",data=titanicDF, fullRank=F)
titanicDF <- as.data.frame(predict(titanicDummy,titanicDF))
print(names(titanicDF))
# what is the proportion of your outcome variable?
prop.table(table(titanicDF$Survived))
# save the outcome for the glmnet model
tempOutcome <- titanicDF$Survived
# generalize outcome and predictor variables
outcomeName <- 'Survived'
predictorsNames <- names(titanicDF)[names(titanicDF) != outcomeName]
#################################################
# model it
#################################################
# get names of all caret supported models
names(getModelInfo())
titanicDF$Survived <- ifelse(titanicDF$Survived==1,'yes','nope')
# pick model gbm and find out what type of model it is
getModelInfo()$gbm$type
# split data into training and testing chunks
set.seed(1234)
splitIndex <- createDataPartition(titanicDF[,outcomeName], p = .75, list = FALSE, times = 1)
trainDF <- titanicDF[ splitIndex,]
testDF <- titanicDF[-splitIndex,]
# create caret trainControl object to control the number of cross-validations performed
objControl <- trainControl(method='cv', number=3, returnResamp='none', summaryFunction = twoClassSummary, classProbs = TRUE)
# run model
objModel <- train(trainDF[,predictorsNames], as.factor(trainDF[,outcomeName]),
method='gbm',
trControl=objControl,
metric = "ROC",
preProc = c("center", "scale"))
)
# find out variable importance
summary(objModel)
# find out model details
objModel
#################################################
# evalute mdoel
#################################################
# get predictions on your testing data
# class prediction
predictions <- predict(object=objModel, testDF[,predictorsNames], type='raw')
head(predictions)
postResample(pred=predictions, obs=as.factor(testDF[,outcomeName]))
# probabilites
predictions <- predict(object=objModel, testDF[,predictorsNames], type='prob')
head(predictions)
postResample(pred=predictions, obs=testDF[,outcomeName])
auc <- roc(ifelse(testDF[,outcomeName]=="yes",1,0), predictions[[2]])
print(auc$auc)
################################################
# glm model
################################################
# pick model gbm and find out what type of model it is
getModelInfo()$glmnet$type
# save the outcome for the glmnet model
titanicDF$Survived <- tempOutcome
# split data into training and testing chunks
set.seed(1234)
splitIndex <- createDataPartition(titanicDF[,outcomeName], p = .75, list = FALSE, times = 1)
trainDF <- titanicDF[ splitIndex,]
testDF <- titanicDF[-splitIndex,]
# create caret trainControl object to control the number of cross-validations performed
objControl <- trainControl(method='cv', number=3, returnResamp='none')
# run model
objModel <- train(trainDF[,predictorsNames], trainDF[,outcomeName], method='glmnet', metric = "RMSE")
# get predictions on your testing data
predictions <- predict(object=objModel, testDF[,predictorsNames])
library(pROC)
auc <- roc(testDF[,outcomeName], predictions)
print(auc$auc)
postResample(pred=predictions, obs=testDF[,outcomeName])
# find out variable importance
summary(objModel)
plot(varImp(objModel,scale=F))
# find out model details
objModel
# display variable importance on a +/- scale
vimp <- varImp(objModel, scale=F)
results <- data.frame(row.names(vimp$importance),vimp$importance$Overall)
results$VariableName <- rownames(vimp)
colnames(results) <- c('VariableName','Weight')
results <- results[order(results$Weight),]
results <- results[(results$Weight != 0),]
par(mar=c(5,15,4,2)) # increase y-axis margin.
xx <- barplot(results$Weight, width = 0.85,
main = paste("Variable Importance -",outcomeName), horiz = T,
xlab = "< (-) importance > < neutral > < importance (+) >", axes = FALSE,
col = ifelse((results$Weight > 0), 'blue', 'red'))
axis(2, at=xx, labels=results$VariableName, tick=FALSE, las=2, line=-0.3, cex.axis=0.6)
################################################
# advanced stuff
################################################
# boosted tree model (gbm) adjust learning rate and and trees
gbmGrid <- expand.grid(interaction.depth = c(1, 5, 9),
n.trees = 50,
shrinkage = 0.01)
# run model
objModel <- train(trainDF[,predictorsNames], trainDF[,outcomeName], method='gbm', trControl=objControl, tuneGrid = gbmGrid, verbose=F)
# get predictions on your testing data
predictions <- predict(object=objModel, testDF[,predictorsNames])
library(pROC)
auc <- roc(testDF[,outcomeName], predictions)
print(auc$auc)
长期用CPU训练深度神经网络会不会损坏CPU正常的使用都会有损耗的,
长期用CPU训练深度神经网络属于中上程度的损耗,
和玩大型游戏的损耗是差不多的,是远不如挖矿对显卡的损耗大
正常情况下,3-5年内坏的几率是千分之五以下
matlab中griddata函数怎么用知道一系列点的坐标如下(1.486,3.059,0.1);(2.121,4.041,0.1);(2.570,3.959,0.1);(3.439,4.396,0.1);(4.505,3.012,0.1);(3.402,1.604,0.1);(2.570,2.065,0.1);(2.150,1.970,0.1);(1.794,3.059,0.2);(2.121,3.615,0.2);(2.570,3.473,0.2);(3.421,4.160,0.2);(4.271,3.036,0.2);(3.411,1.876,0.2);(2.561,2.562,0.2);(2.179,2.420,0.2);(2.757,3.024,0.3);(3.439,3.970,0.3);(4.084,3.036,0.3);(3.402,2.077,0.3);(2.879,3.036,0.4);(3.421,3.793,0.4);(3.953,3.036,0.4);(3.402,2.219,0.4);(3.000,3.047,0.5);(3.430,3.639,0.5);(3.822,3.012,0.5);(3.411,2.385,0.5);(3.103,3.012,0.6);(3.430,3.462,0.6);(3.710,3.036,0.6);(3.402,2.562,0.6);(3.224,3.047,0.7);(3.411,3.260,0.7);(3.542,3.024,0.7);(3.393,2.763,0.7)怎样用MATLAB绘制成三维曲面呢?
使用griddata插值
A=[1.486,3.059,0.1;2.121,4.041,0.1;2.570,3.959,0.1;3.439,4.396,0.1;
4.505,3.012,0.1;3.402,1.604,0.1;2.570,2.065,0.1;2.150,1.970,0.1;
1.794,3.059,0.2;2.121,3.615,0.2;2.570,3.473,0.2;3.421,4.160,0.2;
4.271,3.036,0.2;3.411,1.876,0.2;2.561,2.562,0.2;2.179,2.420,0.2;
2.757,3.024,0.3;3.439,3.970,0.3;4.084,3.036,0.3;3.402,2.077,0.3;
2.879,3.036,0.4;3.421,3.793,0.4;3.953,3.036,0.4;3.402,2.219,0.4;
3.000,3.047,0.5;3.430,3.639,0.5;3.822,3.012,0.5;3.411,2.385,0.5;
3.103,3.012,0.6;3.430,3.462,0.6;3.710,3.036,0.6;3.402,2.562,0.6;
3.224,3.047,0.7;3.411,3.260,0.7;3.542,3.024,0.7;3.393,2.763,0.7];
x=A(:,1);y=A(:,2);z=A(:,3);
scatter(x,y,5,z)%散点图
figure
[X,Y,Z]=griddata(x,y,z,linspace(1.486,4.271)',linspace(1.604,4.276),'v4');%插值
pcolor(X,Y,Z);shading interp%伪彩色图
figure,contourf(X,Y,Z) %等高线图
figure,surf(X,Y,Z)%三维曲面
转载请注明出处51数据库 » gridseed软件 如何利用MATLAB产生随机坐标
- 0
- 0
- 0
- 0
- 0
更多推荐
gridseed软件 如何利用MATLAB产生随机坐标
发布评论