Использование aes_string
позволит вам передавать символьные строки в вашу функцию ggplot2, что позволяет вам программно изменить ее более легко:
my.plot = function(x, y, data)
{
p=ggplot(data, aes_string(x=x, y=y))+geom_bar(stat="identity")
print(p)
}
my.plot(x="xVar", y="yVar", data=dataTest)
[/g0]
my.plot(x="xVar", y="zVar", data=dataTest)
[/g1]
Попробуйте использовать Xml Linq:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;
namespace ConsoleApplication51
{
class Program
{
const string FILENAME = @"c:\temp\test.xml";
static void Main(string[] args)
{
XDocument doc = XDocument.Load(FILENAME);
foreach (XElement add in doc.Descendants("add"))
{
string[] values = add.Attribute("value").Value.Split(new char[] {'.'});
values[values.Length - 1] = (int.Parse(values[values.Length - 1]) + 1).ToString();
add.SetAttributeValue("value", string.Join(".", values));
}
}
}
}
Используйте XElement
для загрузки xml-файла. Затем вы можете перебирать узлы-потомки узла <configuration>
с помощью метода Descendants()
.
Наконец, вы можете прочитать атрибуты узлов <add>
с помощью Attribute()
.
XDoxument.Load(FILENAME)
будет читать весь файл. – Fabio 13 July 2018 в 09:09