我需要控制分配给我需要编写的ESRI shapefile属性的有效位数。
更新:我正在使用" round()"但是当我在QGIS属性表中检查结果时它似乎不起作用。 "问题"实际上可能在QGIS中用于表示小数。比较" Form"查看和"表"查看以下内容:数字在一个中舍入,而在另一个中舍入。
答案 0 :(得分:0)
不确定这是不是文件的创建方式,但如果使用Geopandas创建shapefile,则与geopandas / pandas如何表示“ float”或“ float64”类型(即精度)有关。
我通过保存<script type="text/javascript">
(function(RED) {
const resources = ["author", "book", "publisher", ...];
resources.forEach(resource => {
RED.nodes.registerType(`get-${resource}-action`, {...});
RED.nodes.registerType(`update-${resource}-action`, {...});
RED.nodes.registerType(`delete-${resource}-action`, {...});
// other verbs
// some api to create the editor template script tags
document.write(`
<script type="text/html" data-template-name="get-${resource}-action">
<div class="form-row">
<label for="node-config-input-name><i class="icon-tag"></i> Name</label>
<input type="text" id="node-config-input-name">
</div>
</script>`);
// and so on for the other verbs/node types and template types like data-help-name
});
})(RED);
</script>
时不使用shapefile格式来解决此问题,而是使用Geopackage(GPKG)。否则,将不得不将float表示为字符串,或者在保存时使用to_file
参数(不确定它是否适用于.to_file())-请参见下面的链接。
float64 with pandas to_csv pandas converting a float remove exponents