Python有像D3一样的比例尺函数吗?

4

我有一个CSV文件里的数据,格式如下:

"","x","y","sim1","sim2","sim3","sim4","sim5","sim6","sim7","sim8","sim9","sim10","sim11","sim12"
"1",181180,333740,5.56588745117188,6.29487752914429,7.4835410118103,5.75873327255249,6.62183284759521,5.81478500366211,4.85671949386597,5.90418815612793,6.32611751556396,6.99649047851562,6.52076387405396,5.68944215774536
"2",181140,333700,6.36264753341675,6.5217604637146,6.16843748092651,5.55328798294067,7.00429201126099,6.43625402450562,6.17744159698486,6.72836923599243,6.38574266433716,6.81451606750488,6.68060827255249,6.14339065551758
"3",181180,333700,6.16541910171509,6.44704437255859,7.51744651794434,5.46270132064819,6.8890323638916,6.46842670440674,6.07698059082031,6.2140531539917,6.43774271011353,6.21923875808716,6.43355655670166,5.90692138671875

x和y分别表示模拟中每个点的经度和纬度。我需要将它们存储在一个数组中。我想找到每个x和y的最小值和最大值,然后创建一个具有这些维度的矩阵,并进行一些缩放,以发现矩阵中应该在(0,0)、(0,1)、(0,2)等处的值。

在D3中,有一个function可以完成所有这些操作:

scaleX = d3.scale.linear().domain([d3.min(simulationDataset, function(d) {return d.x;}), d3.max(simulationDataset, function(d) { return d.x; })]);
scaleY = d3.scale.linear().domain([d3.min(simulationDataset, function(d) {return d.y;}), d3.max(simulationDataset, function(d) { return d.y; })]);

Python中是否有类似的东西,还是我需要从零开始?

提前致谢。


2
只是顺便提一下--你可以使用d3.extent来代替同时使用d3.mind3.max - Lars Kotthoff
1
哦,而且这个问题应该会有所帮助。 - Lars Kotthoff
嗨,@LarsKotthoff。感谢您在d3中的提示。这个问题是我到目前为止一直在做的。我想知道是否有一种简短的方式,即一种简短的命令来完成这个操作,就像在d3中一样。(: - pceccon
2个回答

1

-3

在Python中,您可能想使用numpy来处理这种事情。


3
是的,@DanielRoseman,我知道解决方案可能涉及Numpy,但我不知道如何实现我想要的内容。 - pceccon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接