假设我有一个二叉树,其中数据结构的根只是一个树节点.对于每个节点,孩子都可以通过Children酒店进入.这是我尝试过的.它TreeRoot是继承数据上下文的属性,但它是单个节点(不是集合).
<UserControl.Resources>
<HierarchicalDataTemplate x:Key="TreeNodeTemplate" ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}" />
</HierarchicalDataTemplate>
</UserControl.Resources>
<Grid>
<TreeView ItemsSource="{Binding TreeRoot}" ItemTemplate="{StaticResource TreeNodeTemplate}" />
</Grid>
Run Code Online (Sandbox Code Playgroud) 我正在使用d3.js将动物家族(有机体)可视化(一次最多4000个)作为树形图,尽管数据源也可以是目录列表或命名空间对象列表.我的数据看起来像:
json = {
organisms:[
{name: 'Hemiptera.Miridae.Kanakamiris'},
{name: 'Hemiptera.Miridae.Neophloeobia.incisa'},
{name: 'Lepidoptera.Nymphalidae.Ephinephile.rawnsleyi'},
... etc ...
]
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:我正在尝试找到将上述数据转换为分层父/子数据结构的最佳方法,正如许多d3可视化(例如treemap)所使用的那样(对于数据示例,请参阅d3中的flare.json/examples/data/directory).以下是所需数据结构的示例:
{"name": "ROOT",
"children": [
{"name": "Hemiptera",
"children": [
{"name": "Miridae",
"children": [
{"name": "Kanakamiris", "children":[]},
{"name": "Neophloeobia",
"children": [
{"name": "incisa", "children":[] }
]}
]}
]},
{"name": "Lepidoptera",
"children": [
{"name": "Nymphalidae",
"children": [
{"name": "Ephinephile",
"children": [
{"name": "rawnsleyi", "children":[] }
]}
]}
]}
]}
}
Run Code Online (Sandbox Code Playgroud)
编辑:在ROOT节点内包含所有原始所需的数据结构,以便符合d3示例的结构,这些示例只有一个主父节点.
我希望了解一般的设计模式,作为奖励,我希望在javascript,php,(甚至是python)中看到一些解决方案.javascript是我的偏好.关于php:我实际使用的数据来自php脚本对数据库的调用,该脚本将结果编码为json.php脚本中的数据库结果是一个有序数组(见下文),如果这是基于php的答案的任何用途.
Array
(
[0] => Array
(
['Rank_Order'] => …Run Code Online (Sandbox Code Playgroud) 我可以在分层数据模型中找到给定记录的所有子项(请参阅下面的代码),但我不确定如何遍历具有给定子ID的父/子链.任何人都可以指出我正确的方向来弄清楚如何做到这一点?这对Linq to SQL也有可能吗?
WITH TaskHierarchy (TaskID, [Subject], ParentID, HierarchyLevel, HierarchyPath) AS
(
-- Base case
SELECT
TaskID,
[Subject],
ParentID,
1 as HierarchyLevel,
CONVERT(VARCHAR(MAX),'/') AS HierarchyPath
FROM Task
WHERE TaskID = 2
UNION ALL
-- Recursive step
SELECT
t.TaskID,
t.Subject,
t.ParentID,
th.HierarchyLevel + 1 AS HierarchyLevel,
CONVERT(varchar(MAX),th.HierarchyPath + CONVERT(VARCHAR(32),t.ParentID) + '/') AS HierarchyPath
FROM Task t
INNER JOIN TaskHierarchy th ON
t.ParentID = th.TaskID
)
SELECT *
FROM TaskHierarchy
ORDER BY HierarchyLevel, [Subject]
Run Code Online (Sandbox Code Playgroud) 与使用Joe Celko描述的层次结构实现相比,SQL Server 2008的层次结构数据类型的执行情况如下:http://www.intelligententerprise.com/001020/celko.jhtml?
我过去使用Celko的方法效果很好 - 但是不希望为新项目实现它,除非它比Microsoft在SQL Server 2008中提供的更好.
UIViewController的parentViewController属性是readonly,但我正在嵌套自定义视图控制器并希望使用此属性.
但是,由于它是只读的,我发现没有其他的方法来设置该属性,我quesion是:如何做我设置呢?
显然,UINavigationController可以在-pushViewController中以某种方式设置属性,因此-presentModalViewController也是如此,所以它必须是可能的.
我知道我可以添加自己的UIViewController属性,但我确信parentViewController原则上是正确的属性.
iphone cocoa-touch hierarchy uiviewcontroller parentviewcontroller
嗨,谢谢你看我的问题.我是C的中级程序员,但是Android新手.我一直试图让聊天编程工作.假设下面代码中的其他所有内容都能完美运行.我想问的一个问题是,当我尝试从一个运行的线程中调用setText()时,我得到了一个异常.我在这里看了很多网站.发现很多东西,但我真的不明白.请以最简单的方式向我解释,或者如果可能的话,给我一些简单的解决方法.
非常感谢你!!
public class chatter extends Activity {
private String name = "Unknown User";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final EditText msgToServer = (EditText) findViewById(R.id.msgBox);
final EditText chatFromServer = (EditText) findViewById(R.id.chatBox);
final Button MsgToServer = (Button) findViewById(R.id.sendButton);
Socket socket = null;
String ipAddress = "192.168.1.103";
try {
InetAddress serverAddr = InetAddress.getByName(ipAddress);
Socket socketMain = new Socket(serverAddr, 4444);
socket = socketMain;
} catch (IOException e) {
// …Run Code Online (Sandbox Code Playgroud) 我很想听听Clojure大师们在层次结构中管理状态的建议.我发现我经常使用{:structures {:like {:this {:with {:many 'levels}} } } },如果我想跟踪多个级别的状态变化,通过抛出值的原子(atom {:like (atom 'this)} ),我发现自己认为这一定是错的.通常最好只在顶层使用一个原子,并且在地图中没有任何值作为值?
假设Java有这些分层类:
class A
{
}
class B extends A
{
public void m()
{
System.out.println("B\n");
}
}
class C extends B
{
public void m()
{
System.out.println("C\n");
}
}
class D extends C
{
public static void main(String[] args)
{
A a = new D();
// a.m(); // doesn't work
B b = new D();
b.m();
C c = new D();
c.m();
D d = new D();
d.m();
}
}
Run Code Online (Sandbox Code Playgroud)
这是C#中相同代码的(盲目)重复:
using System;
class A
{
}
class B : …Run Code Online (Sandbox Code Playgroud) 我是Elasticsearch的新手,对路径的分层标记化器有疑问.这是我的代码示例:
我的映射代码:
PUT /my_index
{
"settings": {
"analysis": {
"analyzer": {
"path-analyzer": {
"type": "custom",
"tokenizer": "path-tokenizer"
}
},
"tokenizer": {
"path-tokenizer": {
"type": "path_hierarchy",
"delimiter": "."
}
}
}
},
"mappings": {
"my_type": {
"dynamic": "strict",
"properties": {
"group_path": {
"type": "string",
"index_analyzer": "path-analyzer",
"search_analyzer": "keyword"
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的PUT:
PUT /my_index/my_type/1
{
"group_path": ["Book.Thriller.Adult","DVD.Comedy.Kids"]
}
Run Code Online (Sandbox Code Playgroud)
这是我的查询:
GET /my_index/my_type/_search?search_type=count
{
"aggs": {
"category": {
"terms": {
"field": "group_path",
"size": 0
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
结果如下:
{
... …Run Code Online (Sandbox Code Playgroud) 问题 - 人们根据他们的兴趣在各个地方发帖,而其他人则在更大的区域搜索帖子.例如 - 用户A在悉尼郊区邦迪海滩下的帖子.用户B在悉尼搜索帖子.
期望的结果 - 自邦迪位于悉尼境内后,用户B可以看到用户A的帖子.
解:
在google places API中查找,它告诉您郊区X是Y市,依此类推.在我的例子中 - 我想获得有关邦迪的信息,告诉我它属于哪个城市.
这是我对Bodni Beach的简单查询(我使用auto complete因为它是一个自动完成下拉列表):https://maps.googleapis.com/maps/api/place/autocomplete/json?seamor = true&input = bondi%20beach&key = myKey
{
"predictions" : [
{
"description" : "Bondi Beach, New South Wales, Australia",
"id" : "ffa6ad484d2fec594378fb2a24e8328a2bc4459f",
"matched_substrings" : [
{
"length" : 11,
"offset" : 0
}
],
"place_id" : "ChIJWTi8xgGyEmsRgK0yFmh9AQU",
"reference" : "CkQ_AAAAMnfwZeK5SV6uPBnPr34JVdHudAGxMtna--JWHtwe7t81gLBGgsB6mRgmj375m7KReRhpMq1Y6AYxCrC2MnYn8hIQQfASvoG5-7LwRcVR7ELjNxoURh-iBs6M2dmrU8wLKIPcFFgymn4",
"terms" : [
{
"offset" : 0,
"value" : "Bondi Beach"
},
{
"offset" : 13,
"value" : "New South Wales" …Run Code Online (Sandbox Code Playgroud) hierarchy ×10
json ×2
sql ×2
.net ×1
android ×1
c# ×1
categories ×1
clojure ×1
cocoa-touch ×1
d3.js ×1
geonames ×1
inheritance ×1
iphone ×1
java ×1
javascript ×1
linq-to-sql ×1
path ×1
performance ×1
settext ×1
sql-server ×1
state ×1
treemap ×1
treeview ×1
view ×1
wpf ×1
xaml ×1