我正在使用 D3 v4,我想用 D3plus 将文本绕成一个圆圈。我尝试了两种方法,但对我来说没有任何作用。
第一种方法
我采用了https://bl.ocks.org/davelandry/a39f0c3fc52804ee859a中的示例。这是我的代码的重要部分:
<head>
<script type="text/javascript" src="https://d3js.org/d3.v4.min.js"></script>
<script type="text/javascript" src="https://d3plus.org/js/d3plus.js"></script>
</head>
<body>
<div id="graphContainer" class="graphContainer">
<svg width="960" height="600"></svg>
</div>
<script>
d3.json('licenseSmall.json', function(error, graph) {
if (error) throw error;
var nodeContainer = svg.append("g")
.attr("class", "nodeContainer");
var node = nodeContainer.selectAll(".node")
.data(graph.nodes)
.enter().append("g")
.attr("class", "nodes")
.call(d3.drag()
.on("start", dragstarted)
.on("drag", dragged)
.on("end", dragended));
var circle = node.append("circle")
.attr("r", 20)
.attr("fill", function(d) { return color(d.color); });
node.append("text")
.attr("id", "text")
.attr("dx", -10)
.attr("dy", ".35em")
.attr("test-anchor", "middle")
.text(function(d) { return getText(d) }); …
Run Code Online (Sandbox Code Playgroud) 我想用docker设置一个MongoDB副本集。设置似乎很好,但是我无法使用Java应用程序连接到集群。我正在Windows 10上使用VirtualBox作为驱动程序运行Docker版本17.06.0-ce。
我按照本教程中的说明进行操作:http : //www.sohamkamani.com/blog/2016/06/30/docker-mongo-replica-set/
因此,我首先在docker中创建了my-mongo-cluster网络,并使用以下命令运行3个容器:
$ docker run --name mongo1 -d --net mongo-cluster -p 9042:27017 mongo:3.6.0 mongod --replSet my-mongo-set
$ docker run --name mongo2 -d --net mongo-cluster -p 9142:27017 mongo:3.6.0 mongod --replSet my-mongo-set
$ docker run --name mongo3 -d --net mongo-cluster -p 9242:27017 mongo:3.6.0 mongod --replSet my-mongo-set
Run Code Online (Sandbox Code Playgroud)
然后,我连接到mongo1容器,并使用以下配置设置副本集:
config = {"_id" : "my-mongo-set", "members" : [{"_id" : 0,"host" : "mongo1:27017"},{"_id" : 1,"host" : "mongo2:27017"},{"_id" : 2,"host" : "mongo3:27017"}]}
rs.initiate(config)
Run Code Online (Sandbox Code Playgroud)
这似乎工作正常。从mongo1容器的日志中可以看出,所有容器都是相互连接的。
现在,我正在尝试从Java应用程序连接到副本集。我正在使用3.6.0版的mongodb驱动程序。这是我用来连接到在docker中运行的副本集的代码:
List<ServerAddress> serverAddresses = new ArrayList<ServerAddress>();
serverAddresses.add(new ServerAddress(InetAddress.getByName("192.168.99.100"), …
Run Code Online (Sandbox Code Playgroud)