Как построить помеченные точки с индексом в R? [Дубликат]

'use strict'
function A() {}
var a = new A();
class B extends A {}
var b = new B();
console.log('====='); // =====
console.log(B.__proto__ === A); // true
console.log(B.prototype.__proto__ === A.prototype); // true
console.log(b.__proto__ === B.prototype); // true
console.log(a.__proto__ === A.prototype); // true
console.log(A.__proto__ === Function.__proto__); // true
console.log(Object.__proto__ === Function.__proto__); // true
console.log(Object.prototype === Function.__proto__.__proto__); // true
console.log(Object.prototype.__proto__ === null); // true

В JavaScript каждый объект (функция тоже объект!) имеет свойство __proto__, свойство ссылается на его прототип.

Когда мы используем оператор new с конструктором для создания нового объекта, свойство __proto__ нового объекта будет установлено со свойством конструктора prototype, тогда конструктор будет вызван новым объектом, в этот процесс «это» будет ссылкой на новый объект в области конструктора, наконец, вернет новый объект.

Прототип конструктора - это свойство __proto__, свойство Constructor prototype работает с new.

Конструктор должен быть функцией, но функция не всегда является конструктором, даже если она имеет свойство prototype.

Цепочка прототипов фактически является свойством объекта __proto__ для ссылки на его прототип и свойство __proto__ прототипа ссылаться на прототип прототипа и т. д., пока не будет указано свойство __proto__ прототипа объекта, ссылающееся на нуль.

Например:

console.log(a.constructor === A); // true
// "a" don't have constructor,
// so it reference to A.prototype by its ``__proto__`` property,
// and found constructor is reference to A

]

[[Prototype]] a Свойство nd __proto__ на самом деле то же самое.

Мы можем использовать метод getPrototypeOf объекта, чтобы получить прототип чего-то.

console.log(Object.getPrototypeOf(a) === a.__proto__); // true

Любая написанная нами функция может использоваться для создания объекта с new, поэтому любой из этих функций может быть конструктором.

76
задан jeffrey 14 April 2012 в 19:59
поделиться

5 ответов

expression является вашим другом:

plot(1,1, main=expression('title'^2))  #superscript
plot(1,1, main=expression('title'[2])) #subscript
109
ответ дан Tom Kelly 21 August 2018 в 07:20
поделиться
  • 1
    Как загрузить & quot; 2 & quot; из переменной? У меня есть цикл и нужно построить график x_ [1] x_ [2] x_ [3] ... – 0x2207 11 December 2014 в 12:38
  • 2
    Вы можете использовать bquote при работе с подстрочными переменными. Скажем, nIter <- 2, тогда plot(1, 1, main = bquote(title[.(nIter)])) именно то, что вам нужно (взято из списка рассылки R-help ). – fdetsch 7 January 2015 в 10:55

См. выражение

plot(1:10,main=expression("This is a subscript "[2]))

enter image description here [/g0]

23
ответ дан Chase 21 August 2018 в 07:20
поделиться
  • 1
    «plotmath» на самом деле, вероятно, более полезен для этого ... – Dason 14 April 2012 в 20:17

Если вы хотите иметь несколько индексов в одном тексте, используйте звездочку (*) для разделения разделов:

plot(1:10, xlab=expression('hi'[5]*'there'[6]^8*'you'[2]))
94
ответ дан Cyrille 21 August 2018 в 07:20
поделиться
  • 1
    Ничего себе, двухдневный ответ на двухлетний вопрос, который оказался тем, что мне нужно. Благодаря! – Michael 24 May 2014 в 01:25
  • 2
    И если вы хотите, чтобы индекс был строкой, просто поставьте его в кавычки: plot(1:10, xlab=expression('hi'[5]*'there'[6]^8*'you'['down here']*'and'^'up'*'there')) – smacdonald 11 September 2014 в 08:28
  • 3

Индекс и обращение к сохраненному значению ...

a <- 10
plot(c(0,1), c(0,1), type = 'n', ann = FALSE, xaxt = 'n', yaxt = 'n')
text(0.2, 0.6, cex = 1.5, bquote(paste('S'['f']*' = ', .(a))))

7
ответ дан Tony Ladson 21 August 2018 в 07:20
поделиться

В другом примере выражение работает для отрицательных верхних индексов без необходимости кавычек вокруг отрицательного числа:

title(xlab=expression("Nitrate Loading in kg ha"^-1*"yr"^-1))

, и вам нужно только * разделять разделы, как указано выше (когда вы пишете надстрочный индекс или подстрочный индекс и нужно добавить еще текст в выражение после).

2
ответ дан user29609 21 August 2018 в 07:20
поделиться
  • 1
    Спасибо, что объяснили, что делает *! – Colombus.singalesis 7 April 2018 в 03:33
Другие вопросы по тегам:

Похожие вопросы: